**
fopen的第乙個引數是const char*,如何遇到中文檔名就麻煩了,如果中文是utf8,我們可以用下列**將其轉換為unicode,然後用_wfopen函式開啟檔案。
上**:
bool utf8tounicode(const char* utf8, wchar_t* strunicode)
//轉為unicode
multibytetowidechar(cp_utf8,0,utf8,-1,pwtext,dwunicodelen);
//轉為cstring
wcscpy(strunicode, pwtext);
//清除記憶體
delete pwtext;
return true;
}
使用這個函式:
wchar_t strunicode[260];
utf8tounicode(streamname, strunicode);
file* fid = _wfopen(strunicode, l"rb");
// file* fid = fopen(streamname, "rb");//此為原來的方法,遇到中文不能正確開啟
上述函式其實不夠完善,引數strunicode的長度不能靈活設定,有時間再完善。
strunicode
實現fopen支援中文的方法
vc的fopen函式第乙個引數是const char 一旦遇到中文檔名就難以應付了,如果中文是utf8編碼的話,我們還可以用下列 將其轉換為unicode,然後用 wfopen函式開啟檔案。如下 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 b...
putty如何支援中文
對於經常在windows下遠端ssh到linux的使用者而言,putty可能是你最好的選擇。可是預設情況下,putty對中文的支援卻讓人不敢恭維,如果遠端linux的locale設定為zh cn.bg2312,gbk,utf8等等 顯示就是亂碼。經研究發現,其實putty的中文支援還是很好的,呵呵 ...
解決xshell下vim支援中文
開啟 vimrc檔案從到最後新增如下內容,如果沒有該檔案則在家目錄下建立該檔案。set fileencodings utf 8,ucs bom,gb18030,gbk,gb2312,cp936 set termencoding utf 8 set encoding utf 8 如果新增如下內容後,在...