[align=left]不多说,上代码:HANDLE hf_w,hf_c;
DWORD dw1,dw2;
int n,m;TCHAR str_w[256] = L"一二三四五k";
char str_c[256] = "一二三四五k";hf_w = CreateFile(L"C:\\宽字符.txt",GENERIC_WRITE,0,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL);
n = wcslen(str_w);
WriteFile(hf_w, str_w, n*2, &dw1,NULL);
CloseHandle(hf_w);hf_c = CreateFile(L"C:\\窄字符.txt",GENERIC_WRITE,0,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL);
m = strlen(str_c);
WriteFile(hf_w, str_c, m, &dw1,NULL);
CloseHandle(hf_c);
[/align]
DWORD dw1,dw2;
int n,m;TCHAR str_w[256] = L"一二三四五k";
char str_c[256] = "一二三四五k";hf_w = CreateFile(L"C:\\宽字符.txt",GENERIC_WRITE,0,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL);
n = wcslen(str_w);
WriteFile(hf_w, str_w, n*2, &dw1,NULL);
CloseHandle(hf_w);hf_c = CreateFile(L"C:\\窄字符.txt",GENERIC_WRITE,0,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL);
m = strlen(str_c);
WriteFile(hf_w, str_c, m, &dw1,NULL);
CloseHandle(hf_c);
[/align]
m = strlen(str_c);
WriteFile(hf_w, str_c, m, &dw1,NULL);//往hf_w写入?
CloseHandle(hf_c);
打开文件先写入BOM信息即可 char bom[2]={0xff,0xfe};
WriteFile(hf_w, rom, 2, &dw1,NULL);
n = wcslen(str_w);
WriteFile(hf_w, str_w, n*2, &dw1,NULL);
这样编辑器就能识别出来了。
DWORD dw1,dw2;
int n,m;WCHAR str_w[256] = L"一二三四五k";
char str_c[256] = "一二三四五k";BYTE h[] = {0xFf, 0xFE};hf_w = CreateFileW(L"C:\\宽字符.txt",GENERIC_WRITE,0,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL);
n = wcslen(str_w);
WriteFile(hf_w, h, 2, &dw1,NULL); //
WriteFile(hf_w, str_w, n*2, &dw1,NULL);
CloseHandle(hf_w);hf_c = CreateFileW(L"C:\\窄字符.txt",GENERIC_WRITE,0,NULL,CREATE_ALWAYS,FILE_ATTRIBUTE_NORMAL,NULL);
m = strlen(str_c);
WriteFile(hf_c, str_c, m, &dw2,NULL); // hf_w 改为 hf_c
CloseHandle(hf_c);