Unicode 下的文本输出

之前一直使用的是多字节方式编程,最新的项目要和c#混用,索性改成unicode编程。

在进行文本输出时 发现换行在mbs与unicode下是不一样的。

第一 mbs下 文本换行只需要"\n"就可以了,unicode则需要L"\r\n"

第二 unicode下 fopen 使用 "w+"模式 fwrite 如果含有 L'\n'(0x000a) 则会被修改成0x0d0a。从而出现乱码,即L"\r\n"变成0x000d 0x0d0a。

第三 unicode下 需要在文本起始位置输入BOM=0xFEFF 用来标识是 unicode文本。

posted @ 2010-09-25 14:29  迷花倚石忽已暝  阅读(278)  评论(0编辑  收藏  举报