c++ - 如何将 CSV 文件保存为 UTF-8

标签 c++ csv utf-8 mfc

我编写代码来创建 .带有泰文字符的 CSV 文件。但是当我使用 Microsoft Excel 泰语字符打开文件时,该文件出现错误。但是当我在记事本中打开它时,然后我按保存。并再次在 Excel 中打开它。这是理想的我认为这是因为该程序没有编码为 utf-8。 我必须做程序,将其保存为 utf-8。

std:: ofstream MyCSVFile;
MyCSVFile.open("myfile.csv", std::ios::out | std::ios::app);
MyCSVFile << "Name,Address" << endl;
MyCSVFile <<name<<","<<address << endl;
MyCSVFile.close();
}

最佳答案

您需要将 BOM 写入文件的开头。试试这个:

const char *bom = "\xef\xbb\xbf";
MyCSVFile << bom;
MyCSVFile << "Name...

这是一本好书:BOM in Wikipedia .

关于c++ - 如何将 CSV 文件保存为 UTF-8,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21272006/

相关文章:

c# - XML Unicode 反序列化

xml - Perl utf8 binmode 意外结果

c++ - C++ 中的浮点异常

c++ - OpenCV中手动实现Sobel算子

c++ - 如何枚举通过 TWAIN 支持的分辨率

java - 读取 CSV 文件返回 java.io.FileNotFoundException :

c++ - OpenSSL 解密 - EVP_DecryptFinal_ex 失败

csv - 如何创建 scikit learn 数据集?

python - 如果第一列相同,则合并两个 csv 文件

python - 通过 ctypes 将 Unicode 字符串传递给 printf