怎样把将含有多国文字的字符串写入文件?

NeptuneG 2012-07-30 10:18:34
目前的情况是按照要求分别从22个不同语言的文件中读出了部分内容,然后整合成了一个vector<wstring> wline_list
举例
wline_list[0] = "IDS_TOAST_ECOON,"eco Mode is turned On.","ecoモードをオンにしました。","Režim eco je zapnutý.","Økoindstillingen er aktiveret.","ecomodus is ingeschakeld.","eco-tila on käytössä.","Le mode eco est activé.","eco-Modus ist aktiviert.","Η λειτουργία eco ε...

但是怎么把这样的字符串写入一个文件。。。。用wofstream写到日文的部分就写不下去了
查了一些资料说要调用imbue,例如

std::wofstream fout("StringTable.csv");
fout.imbue("chs");

这样倒是可以顺利写完日文部分,但是捷克语("Režim eco je zapnutý.")部分就写不下去了。。。
求解决方案○| ̄|_
...全文
78 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
赵4老师 2012-07-30
  • 打赏
  • 举报
回复
另外提醒:
不要把
fopen("...","...");fscanf,fprintf,fclose //读时把\r\n替换成\n,写时把\n替换成\r\n;读到\x1a就设置EOF;读写的内容当字符看待

fopen("...","...b");fread,fwrite,fclose //不作以上替换,遇到\x1a仍继续读;读写的内容当字节看待
弄混了
baichi4141 2012-07-30
  • 打赏
  • 举报
回复
使用UNICODE表示文本,写入txt时加0xFF 0xFE文件头
个人讨厌wofstream这类微软自己定义的函数,不管是写ANSI还是写UNICODE,一贯使用标准库函数
赵4老师 2012-07-30
  • 打赏
  • 举报
回复
摒弃fstream
使用FILE *

对电脑而言只有二进制字节,对人脑才有字符、字符串、Unicode、多国文字、……

推荐使用WinHex软件查看文件或内存中的原始字节内容。

33,311

社区成员

发帖
与我相关
我的任务
社区描述
C/C++ 新手乐园
社区管理员
  • 新手乐园社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧