linux – 如何将文件从ASCII转换为UTF-8?
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了linux – 如何将文件从ASCII转换为UTF-8?,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1717字,纯文字阅读大概需要3分钟。
内容图文
![linux – 如何将文件从ASCII转换为UTF-8?](/upload/InfoBanner/zyjiaocheng/950/700a4aa2d56e4480b6531ebc778f170b.jpg)
我正在尝试将一堆文件从ASCII转码为UTF-8.
为此,我尝试使用iconv:
iconv -f US-ASCII -t UTF-8 infile > outfile
-f ENCODING输入的编码
-t ENCODING输出的编码
该文件仍未转换为UTF-8.它是一个.dat文件.
在发布之前,我搜索了Google并找到了以下信息:
ASCII is a subset of UTF-8, so all ASCII files are already UTF-8 encoded. The bytes in the ASCII file and the bytes that would result from “encoding it to UTF-8” would be exactly the same bytes. There’s no difference between them.
Force encode from US-ASCII to UTF-8 (iconv)
Best way to convert text files between character sets?
上述链接仍无济于事.
即使它是ASCII格式,它也支持UTF-8,因为UTF-8是一个超级集合,另一方要接收我的文件需要文件编码为UTF-8.他只需要文件格式为UTF-8.
请给我任何建议.
解决方法:
我对这个问题感到有点困惑,因为正如你所说,ASCII是UTF-8的一个子集,因此所有的ASCII文件都已经过UTF-8编码了.
如果您只向另一方发送仅包含ASCII字符的文件,但另一方抱怨他们不是’UTF-8编码’,那么我猜他们指的是ASCII文件有没有明确指示内容为UTF-8的字节顺序标记.
如果确实如此,那么您可以使用以下答案添加字节顺序标记:
iconv: Converting from Windows ANSI to UTF-8 with BOM
如果对方表示他不需要“BOM”(字节顺序标记),但仍然抱怨文件不是UTF-8,那么另一种可能性是你的初始文件实际上不是ASCII,而是包含字符使用ANSI或ISO-8859-1编码的.
编辑后添加以下实验,在Ram对使用’file’命令寻找类型的另一方发表评论后
Tims-MacBook-Pro:~ tjohns$echo 'Stuff' > deleteme
Tims-MacBook-Pro:~ tjohns$cat deleteme
Stuff
Tims-MacBook-Pro:~ tjohns$file -I deleteme
deleteme: text/plain; charset=us-ascii
Tims-MacBook-Pro:~ tjohns$echo -ne '\xEF\xBB\xBF' > deleteme
Tims-MacBook-Pro:~ tjohns$echo 'Stuff' >> deleteme
Tims-MacBook-Pro:~ tjohns$cat deleteme
Stuff
Tims-MacBook-Pro:~ tjohns$file -I deleteme
deleteme: text/plain; charset=utf-8
内容总结
以上是互联网集市为您收集整理的linux – 如何将文件从ASCII转换为UTF-8?全部内容,希望文章能够帮你解决linux – 如何将文件从ASCII转换为UTF-8?所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。