文件的讀寫是.net中常用的功能,本文即以實(shí)例形式展示.net實(shí)現(xiàn)文件讀寫的幾種常用方法,供大家參考之用。具體如下:
在.net中有很多有用的類庫(kù)來(lái)讀寫硬盤上的文件,一般比較常用的有:
File:
1.什么時(shí)候使用:當(dāng)讀寫件大小不大,同時(shí)可以一次性進(jìn)行讀寫操作的時(shí)候使用
2.不同的方式可以讀寫文件類型不一樣。
ReadAllBytes() WriteAllByte():可以讀寫任意類型的文件 (里面封裝的是FileStream)
ReadAllLines() ReadAllText():(里面封裝是StreamWriter,StreamReader),只能讀寫文本類型文件
FileStream:
1.當(dāng)讀寫大文件的時(shí)候使用,它可以自定義讀寫的數(shù)組大小
2.一個(gè)流只能做一個(gè)事情:如果需要讀和寫那么就需要?jiǎng)?chuàng)建兩個(gè)流
3.讀取:將數(shù)據(jù)讀取到數(shù)組 寫入是將數(shù)組的數(shù)據(jù)再寫入到文件(類型轉(zhuǎn)換)
下面展示一個(gè)使用FileStream類的讀寫一部電影示例代碼:
//讀取 using (FileStream fsRead = new FileStream(@"F:/C#.avi", FileMode.Open)) { using (FileStream fsWrite = new FileStream(@"d:/C#學(xué)習(xí).avi", FileMode.Create)) { //自定義數(shù)組的長(zhǎng)度 byte[] bytes = new byte[1024]; //當(dāng)沒(méi)有讀取到文件的末尾的時(shí)候就需要循環(huán)讀取 while (fsRead.Position < fsRead.Length) { //讀取的時(shí)候position屬性會(huì)自動(dòng)變化,記住當(dāng)前讀取到的位置,以字節(jié)為單位 //count可以獲取當(dāng)前具體讀取到的字節(jié)數(shù) int count = fsRead.Read(bytes, 0, bytes.Length); if (count == 0) { break; } //寫入 fsWrite.Write(bytes, 0, count); //只需要寫入讀取到的字節(jié)數(shù)就可以了 } } MessageBox.Show("ok"); }
補(bǔ)充:
StreamReader/StreamWrite:
1.只能對(duì)文本文件進(jìn)行讀寫操作
2.它可以按行進(jìn)行讀取和寫入
新聞熱點(diǎn)
疑難解答
圖片精選