【问题标题】:Create a utf8 file in linux in c programing [closed]在c编程中在linux中创建一个utf8文件[关闭]
【发布时间】:2011-09-17 04:27:36
【问题描述】:

我必须在 linux (Ubuntu) 中用 c 创建一个 utf8 文件(比如 utf8_test.txt)。 我尝试了 fopen(),但它根据语言环境创建 hte 文件 - 因为语言环境是 en_IN,所以我猜它是在 Ascii 中创建的。

是否有任何接口或函数可以让我指定要打开的文件的格式,或者我需要在文件的开头添加一些字节,以便操作系统知道它是一个 UTF8 文件?

请提供您宝贵的意见。

谢谢。

【问题讨论】:

    标签: c linux file utf-8


    【解决方案1】:

    GLib 包含处理 UTF-8 文本的例程,而 libiconv 可用于在各种字符集之间进行转换,包括 UTF-8。

    【讨论】:

      【解决方案2】:

      fopen 可用于写入二进制数据流。您的语言环境不相关。

      您应该检查您是否真的向文件发送了 UTF-8 字节流。您可以通过在文件上运行十六进制编辑器来做到这一点,例如xxd,并查看文件中是否出现 UTF-8 序列。

      如果文件中没有 UTF-8 字节,则发送到文件的字节流不正确。

      如果文件中确实包含 UTF-8 字节,那么您的问题只是显示问题之一。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2018-10-27
        • 1970-01-01
        • 2016-07-11
        • 2011-07-24
        • 2014-06-09
        • 1970-01-01
        • 2015-05-04
        • 2012-09-10
        相关资源
        最近更新 更多