txt分帶編碼和不帶編碼兩種,帶編碼的如utf-8格式txt,不帶編碼的如ansi格式txt。帶編碼的用nsstring的stringwithcontentsoffile可讀出,不帶的,我們依次嘗試gbk和gb18030編碼。
原始碼如下:
///編碼可以解決 .txt 中文顯示亂碼問題
nsstringencoding *useencodeing = nil;
//帶編碼頭的如utf-8等,這裡會識別出來
nsstring *body = [nsstring
stringwithcontentsoffile:filename usedencoding:useencodeing error:nil];
//識別不到,按gbk編碼再解碼一次.這裡不能先按gb18030解碼,否則會出現整個文件無換行bug。
if (!body) else {
nsstring
*urlstring = [[
nsbundle
mainbundle
]pathforauxiliaryexecutable
:filename];
urlstring = [urlstring stringbyaddingpercentescapesusingencoding:nsutf8stringencoding];
nsurl *requesturl = [nsurl
urlwithstring:urlstring];
nsurlrequest *request = [nsurlrequest
requestwithurl:requesturl];
[webview_file
loadrequest:request];
Ubuntu Gedit開啟TXT顯示亂碼問題
初裝ubuntu,開啟windows儲存的txt檔案很可能會遇到各種亂碼問題。下面是wiki ubuntu裡的解決辦法 gedit中文亂碼 預設配置下,用 ubuntu 的文字編輯器 gedit 開啟 gb18030 gbk gb2312 等型別的中文編碼文字檔案時,將會出現亂碼。出現這種情況的原因...
ubuntu開啟txt亂碼問題
iconv f gbk t utf8 shujujiegou.txt shujujiegou.txt.utf8 1 在終端輸入 dconf editor 回車 見圖2 如果沒有安裝用 sudo apt get install dconf tools 安裝。2 展開org gnome gedit pr...
vc開啟並讀取txt檔案
讓使用者選擇檔案進行開啟和儲存操作時,就要用到檔案開啟 儲存對話方塊。mfc的類 cfiledialog 用於實現這種功能。使用 cfiledialog 宣告乙個物件時,第乙個bool型引數用於指定檔案的開啟或儲存,當為true時將構造乙個檔案開啟對話方塊,為false時構造乙個檔案儲存對話方塊。在...