Home | Contact

金算盘最快开奖现场 2016马会资料大全 www89699com 本港台现场手机报码

资讯排行

推荐阅读

如何在Linux中将文件编码转换为UTF-8

2017-09-16 19:13

  在这篇教程中,我们将解释字符编码的含义,然后给出一些使用命令行工具将使用某种字符编码的文件为另一种编码的例子。最后,我们将一起看一看如何在 Linux 下将使用各种字符编码的文件为 UTF-8 编码。

  你可能已经知道,计算机除了二进制数据,是不会理解和存储字符、数字或者任何人类能够理解的东西的。一个二进制位只有两种可能的值,也就是 0 或 1,真或假,是或否。其它的任何事物,比如字符、数据和图片,必须要以二进制的形式来表现,以供计算机处理。

  简单来说,字符编码是一种可以电脑来将原始的 0 和 1 解释成实际字符的方式,在这些字符编码中,字符都以一串数字来表示。

  字符编码方案有很多种,比如 ASCII、ANCI、Unicode 等等。下面是 ASCII 编码的一个例子。

  在 Linux 中,命令行工具 iconv 用来将使用一种编码的文本为另一种编码。

  下面,我们将学习如何将一种编码方案转换为另一种编码方案。下面的命令将会将 ISO-8859-1 编码转换为 UTF-8 编码。

  我们从查看这个文件的编码开始,然后来查看文件内容。最后,我们可以把所有字符转换为 UTF-8 编码。

  在运行 iconv 命令之后,我们可以像下面这样检查输出文件的内容,和它使用的字符编码。

  注意:如果输出编码后面添加了 //IGNORE 字符串,那些不能被转换的字符将不会被转换,并且在转换后,程序会显示一条错误信息。

  好,如果字符串 //TRANSLIT 被添加到了例子中的输出编码之后 (UTF-8//TRANSLIT),待转换的字符会尽量采用形译原则。也就是说,如果某个字符在输出编码方案中不能被表示的话,它将会被替换为一个形状比较相似的字符。

  而且,如果一个字符不在输出编码中,而且不能被形译,它将会在输出文件中被一个问号标记 ? 代替。

  回到我们的主题。如果你想将多个文件甚至某目录下所有文件为 UTF-8 编码,你可以像下面一样,编写一个简单的 shell 脚本,并将其命名为 encoding.sh:

  保存文件,然后为它添加可执行权限。在待转换文件 (*.txt) 所在的目录中运行这个脚本。

  重要事项:你也可以使这个脚本变得更通用,比如转换任意特定的字符编码到另一种编码。为了达到这个目的,你只需要改变 FROM_ENCODING 及 TO_ENCODING 变量的值。别忘了改一下输出文件的文件名 ${file%.txt}.utf8.converted.

  将这篇指南总结一下,理解字符编码的概念、了解如何将一种编码方案转换为另一种,是一个电脑用户处理文本时必须要掌握的知识,程序员更甚。

  每日头条、业界资讯、热点资讯、爆料,全天微博播报。各种爆料、内幕、花边、资讯一网打尽。百万互联网粉丝互动参与,TechWeb微博期待您的关注。

  9月15日消息,苹果在本周三凌晨1点发布了iPhone 8/8 Plus/X三款手机产品。现在最新消...

  在本周一的发布会上,小米正式发布了旗下定位最高的产品小米MIX2,它扔掉了概念机的帽...

  近日有爆料称,骁龙845有望在10月宣布,年底正式发布,明年Q1就有终端产品上市。从目...

  富士康公布了竞购东芝芯片业务的详细计划,称如果成功收购该部门,则富士康仅持股25%...

  监管文件显示,科斯罗萨西周四通知纽约时报公司董事会,他将因为出任Uber的新职位而卸...

  自从上线月卡功能后,摩拜红包车、宝箱车就少了很多,虽然更省钱了,不过也少了很多乐...

  我们都经常都会在一个繁忙的城市中心附近开着车转悠,其实我们只是在拼命想找个地方停...

  春樱一帘幽风,花之芬芳温柔治愈;羽刃暴风卷起,崇高之力席卷天地;反击守护挚友,深厚......

  全新精灵-喵强势登陆酷跑国,巨化、冲锋石强势加分,光看其酷炫的外表就知道......

  在一场展览中,暖暖与海樱等人误入了故宫的回忆之梦。养心殿几百年的经历在中交错......

  夜雾迷城活动2月22日5:00—2月28日23:59,本次活动新增套装黎明之冠新月之吻,下面为......