C#使用StreamReader和StreamWriter類(lèi)讀寫(xiě)操作文件
StreamReader 類(lèi) (System.IO) | Microsoft 官方文檔
StreamWriter 類(lèi) (System.IO) | Microsoft 官方文檔
一、文本讀寫(xiě)類(lèi):
TextReader/TextWriter:文本讀寫(xiě),抽象類(lèi)
1、TextReader文本讀,其派生類(lèi):
- StreamReader:以一種特定的編碼從字節(jié)流中讀取字符。
- StringReader:從字符串讀取。
2、TextWriter文本寫(xiě),其派生類(lèi):
- StreamWriter:以一種特定的編碼向流中寫(xiě)入字符。
- StringWriter:將信息寫(xiě)入字符串, 該信息存儲(chǔ)在基礎(chǔ) StringBuilder 中。
- IndentedTextWriter:提供可根據(jù) Tab 字符串標(biāo)記縮進(jìn)新行的文本編寫(xiě)器。
- HttpWriter:提供通過(guò)內(nèi)部 TextWriter 對(duì)象訪問(wèn)的 HttpResponse 對(duì)象。
- HtmlTextWriter:將標(biāo)記字符和文本寫(xiě)入 ASP.NET 服務(wù)器控件輸出流。 此類(lèi)提供 ASP.NET 服務(wù)器控件在向客戶(hù)端呈現(xiàn)標(biāo)記時(shí)使用的格式化功能。
二、StreamReader類(lèi),讀文件
1、實(shí)例:
構(gòu)造函數(shù):默認(rèn)編碼為UTF-8
StreamReader srAsciiFromFile = new StreamReader("C:\\Temp\\Test.txt", System.Text.Encoding.ASCII); StreamReader srAsciiFromStream = new StreamReader( (System.IO.Stream)File.OpenRead("C:\\Temp\\Test.txt"),System.Text.Encoding.ASCII);
1、從文件讀取文本 Read(),Peek()
using (StreamReader sr = new StreamReader(path)) { while (sr.Peek() >= 0) { Console.Write((char)sr.Read()); } }
2、調(diào)用其ReadAsync()方法以異步方式讀取文件。
static async Task Main() { await ReadAndDisplayFilesAsync(); } static async Task ReadAndDisplayFilesAsync() { String filename = "C:\\s.xml"; Char[] buffer; using (var sr = new StreamReader(filename)) { buffer = new Char[(int)sr.BaseStream.Length]; await sr.ReadAsync(buffer, 0, (int)sr.BaseStream.Length); } Console.WriteLine(new String(buffer)); }
3、讀取一行字符。ReadLine()
using (StreamReader sr = new StreamReader("TestFile.txt")) { string line; // Read and display lines from the file until the end of the file is reached. while ((line = sr.ReadLine()) != null) { Console.WriteLine(line); } }
4、讀取到一個(gè)操作中的文件的末尾。ReadToEnd()
using (StreamReader sr = new StreamReader(path)) { Console.WriteLine(sr.ReadToEnd()); }
三、StreamWriter類(lèi),寫(xiě)文件
實(shí)例:
StreamWriter類(lèi)允許直接將字符和字符串寫(xiě)入文件
//保留文件現(xiàn)有數(shù)據(jù),以追加寫(xiě)入的方式打開(kāi)d:\file.txt文件 using (StreamWriter sw = new StreamWriter(@"d:\file.txt", true)) //true 表示追加 { //向文件寫(xiě)入新字符串,并關(guān)閉StreamWriter sw.WriteLine("Another File Operation Method"); }
到此這篇關(guān)于C#使用StreamReader和StreamWriter類(lèi)讀寫(xiě)操作文件的文章就介紹到這了。希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Unity實(shí)現(xiàn)簡(jiǎn)單虛擬搖桿
這篇文章主要為大家詳細(xì)介紹了Unity實(shí)現(xiàn)簡(jiǎn)單虛擬搖桿,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-04-04C#播放鈴聲最簡(jiǎn)單實(shí)現(xiàn)方法
這篇文章主要介紹了C#播放鈴聲最簡(jiǎn)單實(shí)現(xiàn)方法,通過(guò)調(diào)用系統(tǒng)方法實(shí)現(xiàn)播放wav格式音頻文件的功能,是非常實(shí)用的技巧,需要的朋友可以參考下2014-12-12SuperSocket入門(mén)--Telnet服務(wù)器和客戶(hù)端請(qǐng)求處理
本文的控制臺(tái)項(xiàng)目是根據(jù)SuperSocket官方Telnet示例代碼進(jìn)行調(diào)試的,官方示例代碼:Telnet示例。下面跟著小編一起來(lái)看下吧2017-01-01支持windows與linux的php計(jì)劃任務(wù)的實(shí)現(xiàn)方法
這篇文章主要介紹了支持windows與linux的php計(jì)劃任務(wù)的實(shí)現(xiàn)方法,較為詳細(xì)的講述了php計(jì)劃任務(wù)中涉及到的php程序?qū)崿F(xiàn)方法、Windows計(jì)劃任務(wù)實(shí)現(xiàn)方法等,需要的朋友可以參考下2014-11-11基于C#實(shí)現(xiàn)語(yǔ)音識(shí)別功能詳解
在.NET4.0中,可以借助System.Speech組件讓電腦來(lái)識(shí)別我們的聲音。本文將利用該組件實(shí)現(xiàn)語(yǔ)音識(shí)別功能,文中實(shí)現(xiàn)過(guò)程講解詳細(xì),需要的可以參考一下2022-04-04