C#使用FileStream循環(huán)讀取大文件數(shù)據(jù)的方法示例
本文實(shí)例講述了C#使用FileStream循環(huán)讀取大文件數(shù)據(jù)的方法。分享給大家供大家參考,具體如下:
今天學(xué)習(xí)了FileStream的用法,用來讀取文件流,教程上都是讀取小文件,一次性讀取,但是如果遇到大文件,那么我們就需要循環(huán)讀取文件。
直接上代碼。
引用命名空間
using System.IO;
下面就是循環(huán)讀取大文件的代碼
class Program
{
static void Main(string[] args)
{
//循環(huán)讀取大文本文件
FileStream fsRead;
//獲取文件路徑
string filePath="C:\\Users\\國(guó)興\\Desktop\\1號(hào)店賬號(hào).txt";
//用FileStream文件流打開文件
try
{
fsRead = new FileStream(@filePath,FileMode.Open);
}
catch (Exception)
{
throw;
}
//還沒有讀取的文件內(nèi)容長(zhǎng)度
long leftLength = fsRead.Length;
//創(chuàng)建接收文件內(nèi)容的字節(jié)數(shù)組
byte[] buffer = new byte[1024];
//每次讀取的最大字節(jié)數(shù)
int maxLength=buffer.Length;
//每次實(shí)際返回的字節(jié)數(shù)長(zhǎng)度
int num=0;
//文件開始讀取的位置
int fileStart=0;
while (leftLength>0)
{
//設(shè)置文件流的讀取位置
fsRead.Position=fileStart;
if (leftLength<maxLength)
{
num=fsRead.Read(buffer,0,Convert.ToInt32(leftLength));
}
else{
num=fsRead.Read(buffer,0,maxLength);
}
if (num==0)
{
break;
}
fileStart += num;
leftLength -= num;
Console.WriteLine(Encoding.Default.GetString(buffer));
}
Console.WriteLine("end of line");
fsRead.Close();
Console.ReadKey();
}
}
更多關(guān)于C#相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《C#文件操作常用技巧匯總》、《C#遍歷算法與技巧總結(jié)》、《C#程序設(shè)計(jì)之線程使用技巧總結(jié)》、《C#操作Excel技巧總結(jié)》、《C#中XML文件操作技巧匯總》、《C#常見控件用法教程》、《WinForm控件用法總結(jié)》、《C#數(shù)據(jù)結(jié)構(gòu)與算法教程》、《C#數(shù)組操作技巧總結(jié)》及《C#面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》
希望本文所述對(duì)大家C#程序設(shè)計(jì)有所幫助。
相關(guān)文章
Unity實(shí)現(xiàn)簡(jiǎn)易日志輸出功能
這篇文章主要為大家詳細(xì)介紹了Unity實(shí)現(xiàn)簡(jiǎn)易日志輸出功能,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-09-09
C#?wpf使用DockPanel實(shí)現(xiàn)制作截屏框
做桌面客戶端的時(shí)候有時(shí)需要實(shí)現(xiàn)截屏功能,能夠在界面上框選截屏,本文就來為大家介紹一下wpf如何使用DockPanel制作截屏框吧,感興趣的可以了解下2023-09-09
C# 6.0的屬性(Property)的語(yǔ)法與初始值詳解
下面小編就為大家?guī)硪黄狢# 6.0的屬性(Property)的語(yǔ)法與初始值詳解。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2016-07-07
C#結(jié)合數(shù)據(jù)庫(kù)實(shí)現(xiàn)驗(yàn)證識(shí)別ID卡內(nèi)容的方法
這篇文章主要介紹了C#結(jié)合數(shù)據(jù)庫(kù)實(shí)現(xiàn)驗(yàn)證識(shí)別ID卡內(nèi)容的方法,非常實(shí)用的功能,需要的朋友可以參考下2014-07-07

