在使用qfile讀取文字檔案時,如果檔案內容是gbk(包括gb2313)格式的,則會顯示為亂碼
使用qtextstream指明待讀取的檔案的編碼格式,如下:
qtextstream in
(&file)
;in.
setcodec
("gbk");
// 設定檔案的編碼格式為gbk
qstring line = in.
readline()
;// 此時以gbk的方式從檔案中讀取內容,結果正常
以上方式只適用於待讀取檔案編碼格式都相同(如都是gbk)的情況
while
(!file.
atend()
)
ui->listwidget-
>
additem
(text)
;}
也可封裝成乙個函式,直接呼叫,如下:
qstring musicplayerdialog::
bytearraytounicode
(const qbytearray &array)
return text;
}
c 讀取文字檔案出現亂碼
在寫c 的時候,遇到乙個問題,在使用file.readalltext 開啟文字檔案的時候,除錯發現開啟的文字是亂碼,我生成的這個文字檔案是在c 程式下,以多位元組格式生成的,然後儲存的乙個文字,c 使用file.readalltext 讀取這個文字的時候沒有指定字符集。解決方法 1.使用file.r...
讀取文字檔案
void ctestdlg onreadinfo cfile filewrite1 testwrite1.txt cfile modecreate cfile modewrite cfile filewrite2 testwrite2.txt cfile modecreate cfile modew...
讀取文字檔案內容
讀取文字檔案內容 param filepathandname 帶有完整絕對路徑的檔名 param encoding 文字檔案開啟的編碼方式 return 返回文字檔案的內容 public string readtxt string filepathandname,string encoding th...