【问题标题】:Creating and writing to an UTF-8 file with C++使用 C++ 创建和写入 UTF-8 文件
【发布时间】:2013-05-12 13:48:33
【问题描述】:

我必须在我的 http 流式 C++ 服务器代码中创建一个 m3u8 播放列表。 m3u8 只不过是 UTF-8 m3u 文件。

如何创建 UTF-8 文件(即如何将 UTF-8 字符写入文件)?也许在 Linux 上使用 open() 函数或 C++ 中的其他函数?

int fd = open("myplaylist.m3u8", O_WRONLY | O_APPEND);

【问题讨论】:

  • 只要你的C++文件是utf8编码的就可以了
  • 是的,我想我必须重新提出如何将 utf-8 字符写入文件的问题?
  • @neckTwi 你事先知道文件的内容,还是从其他地方得到的?
  • @FrederikDeweerdt 我的代码应该生成文件的内容。

标签: file c++ utf-8


【解决方案1】:

您计划执行open() 的方式很好。

决定一个文件是否为 utf-8 格式的是你要写入的字符。如果您将相关字符编码为 utf-8,一切都会按预期工作。

如果您打算将给定的编码(例如 ISO-8859-1)转换为 utf-8,实现它的一个好方法是使用 libiconv,它可以做到这一点。

【讨论】:

    【解决方案2】:

    文件是否“是”utf-8 取决于内容。只要你write() 里面有正确的字节序列就可以了。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-07-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-05-06
      • 2013-11-21
      相关资源
      最近更新 更多