我现在用wininet从从网上read下来的文本保存为xml,网上的xml格式是utf-8的,但是我保存的xml格式变成了ansi的,导致中文乱码,怎么处理?
1、保存格式变成utf-8
2、将utf-8的变为ansi的格式
这两种方式分别怎么处理?
保存文件的时候在开头存一个utf-8的bom: 0xef 0xbb 0xbf
1.写把 <?xml version="1.0" encoding="utf-8"?>写头xml头行,然后在write 读到的内容
2. 想xml写你读到的内容之前,写把读到的字符串转化为UTF-8;
UTF8 转 ANSI的,倒是没写过
setlocale(LC_ALL, "");
wctomb();
实施这俩可以么
up
UTF8 转 ANSI的
C/C++ code:
//预转换,得到所需空间的大小
int wcsLen = ::MultiByteToWideChar(CP_UTF8, NULL, buffer, strlen(buffer), NULL, 0);
wchar_t* wszString = new wchar_t[wcsLen];
//转换
MultiByteToWideChar(CP_UTF8, NULL, buffer, strlen(buffer), wszString, wcsLen);
这样就可以了,不b