在工作中經常讀寫文字檔案,在讀檔案時,需要按開頭的兩個位元組判斷檔案格式,然後按該格式讀檔案中的內容。
寫檔案時,也要按目標檔案指定的格式來寫入,只有這樣才能讓後續的環境正確讀入。
1 檢視格式
在vs2010開發環境開啟某個檔案,然後從選單上, 檔案--高階儲存選項,就可看到當前檔案的編碼格式。
比如,xx.cs,xx.cshtml檔案看到的是[簡體中文(gb2312)-**頁936],就是gb2312。
xx.xml檔案看到的是[unicode(utf-8帶簽名)-**頁65001],就是utf-8。
gjstuwjleh常用的格式有:ascii,utf-8,utf-7,utf-32,unicode,gb2312 。
2 讀格式檔案為
encoding encode=encoding.getencoding("gb2312"));
可以使用後附的類,先讀檔案的編碼格式
encode = fileencode.getfileencodetype("in_file.txt");
string strstr1 = file.readalltext("in.txt", encode);
3 寫格式檔案為
streamwriter sw = new streamwriter("out.txt", false, encoding.getencoding("ascii"));
sw.write("12.3");
sw.close();
4 根據檔案的編碼格式讀寫檔案的完整**
using system;
using system.collections.generic;
using system.linq;
using system.xml;
using systgjstuwjlehem.io;
using system.configuration;
using system.text;
namespace webapplication1
\r\n", figjstuwjlehle.readalltext(xml_out_file, encode6));
strsb.replace(strstr1, "");//舊的同名段落替換為空
//新節點片段,替換整體末尾標籤,即是加入到末尾
strsb.replace("</object_set>", strstr1 + "\r\n" + "</object_set>");//新的插入到末尾
// fileinfo myfile = new fileinfo(xml_out_file);
// streamwriter sw = myfile.createtext();
streamwriter sw = new streamwriter(xml_out_file, false, encode6);"gb2312"));
sw.write(strsb.tostring());
sw.close();
}}//=2=獲得檔案編碼格式的類
public class fileencode
else if (buffer[0] == 0xfe && buffer[1] == 0xff)
else if (buffer[0] == 0xff && buffer[1] == 0xfe)
else
}else}}}
本文標題: c#讀寫指定編碼格式的文字檔案
本文位址:
c 文字檔案的讀寫
對檔案的操作首先要先引入system.io命名空間 輸入流用於從檔案寫入資料 寫操作 輸出流用於向檔案讀取資料 讀操作 1 filestream類有助於檔案的讀寫與關閉。例 建立乙個filestream物件f來讀取名為sample.txt的檔案 filestream f new filestream...
讀寫文字檔案
讀文字 function readtext filename string string vars string alltext string f textfile begin assignfile f,filename 將c myfile.txt檔案與f變數建立連線,後面可以使用f變數對檔案進行操...
C 文字檔案 txt 讀寫
c 文字檔案 txt 讀寫 目錄 前言 讀取txt檔案 寫入txt檔案 前言計算機在最初只支援ascii編碼,但是後來為了支援其他語言中的字元 比如漢字 以及一些特殊字元 比如 就引入了unicode字符集。基於unicode字符集的編碼方式有很多,比如utf 7 utf 8 unicode以及ut...