**yhrun原文c#中streamreader讀取中文出現亂碼
原因是自windows 2000之後的作業系統在檔案處理時預設編碼採用unicode
所以.net檔案的預設編碼也是unicode。除非另外指定,streamreader的預設編碼為unicode,
而不是當前系統的ansi**頁。但是文件大部分還是以ansi編碼儲存,中文文字使用的是gb2312,所以才造成中文亂碼
所以在讀取文字的時候要指定編碼格式。
使用system.text.encoding.defaul告訴streamreader採用目前作業系統的編碼即可。
如:
filestream fs = new filestream("1.txt", filemode.open, fileaccess.read);streamreader read = new streamreader(fs, encoding.default);
string str;
while (read.peek() != -1)
read.close();
C 中StreamReader讀取中文出現亂碼
有時在用c 中streamreader讀取中文時出現亂碼 如 原因是自windows 2000之後的作業系統在檔案處理時預設編碼採用unicode 所以.net檔案的預設編碼也是unicode。除非另外指定,streamreader的預設編碼為unicode,而不是當前系統的ansi 頁。但是文件大...
C 中StreamReader讀取中文出現亂碼
yhrun原文c 中streamreader讀取中文出現亂碼 原因是自windows 2000之後的作業系統在檔案處理時預設編碼採用unicode 所以.net檔案的預設編碼也是unicode。除非另外指定,streamreader的預設編碼為unicode,而不是當前系統的ansi 頁。但是文件大...
c 用StreamReader對檔案讀取
型別 陣列反顯,處理 public void ontypearrayshowitem 讀取對應的天線型別檔案 opentext 建立乙個utf 8 編碼的streamreader物件 streamreader currenttypearraysr currenttypearrayfile.opent...