在C中读取具有特定编码的文件?
我有一个在 Windows 上编写的文件,编码为 WINDOWS-1256,我需要编写一个 C 程序,从该文件读取字节,并将它们写回使用 UTF-8 编码的新文件。
如何在C中读取具有特定编码的文件?
I've a file that was written on windows with encoding WINDOWS-1256, and I need to write a C program that reads bytes from this file and write them back to a new file with UTF-8 encoding.
How to read a file with a specific encoding in C ??
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
除了文本模式和二进制模式之外,没有办法用标准API直接用C读取特定的编码。
您可以将文件作为二进制文件打开并读入。然后您可以使用像 libiconv 这样的库进行特定格式的编码/解码。
Other than text mode and binary mode, there is no way to directly read specific encodings with C with standard API.
You would open the file as binary and read it in. Then you can use a library like libiconv to do the encoding / decoding of specific formats.