C#使用FileStream循环读取大文件数据的方法示例

本文实例讲述了C#使用FileStream循环读取大文件数据的方法。分享给大家供大家参考,具体如下:

今天学习了FileStream的用法,用来读取文件流,教程上都是读取小文件,一次性读取,但是如果遇到大文件,那么我们就需要循环读取文件。

直接上代码。

引用命名空间

using System.IO;

下面就是循环读取大文件的代码

class Program
{
    static void Main(string[] args)
    {
      //循环读取大文本文件
      FileStream fsRead;
      //获取文件路径
      string filePath="C:\\Users\\国兴\\Desktop\\1号店账号.txt";
      //用FileStream文件流打开文件
      try
      {
        fsRead = new FileStream(@filePath,FileMode.Open);
      }
      catch (Exception)
      {
        throw;
      }
      //还没有读取的文件内容长度
      long leftLength = fsRead.Length;
      //创建接收文件内容的字节数组
      byte[] buffer = new byte[1024];
      //每次读取的最大字节数
      int maxLength=buffer.Length;
      //每次实际返回的字节数长度
      int num=0;
      //文件开始读取的位置
      int fileStart=0;
      while (leftLength>0)
      {
        //设置文件流的读取位置
        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();
    }
}

更多关于C#相关内容感兴趣的读者可查看本站专题:《C#文件操作常用技巧汇总》、《C#遍历算法与技巧总结》、《C#程序设计之线程使用技巧总结》、《C#操作Excel技巧总结》、《C#中XML文件操作技巧汇总》、《C#常见控件用法教程》、《WinForm控件用法总结》、《C#数据结构与算法教程》、《C#数组操作技巧总结》及《C#面向对象程序设计入门教程》

希望本文所述对大家C#程序设计有所帮助。

(0)

相关推荐

  • C#文件和字节流的转换方法

    本文实例讲述了C#文件和字节流的转换方法.分享给大家供大家参考.具体实现方法如下: 1.读取文件,并转换为字节流 FileStream fs = new FileStream(filename,FileMode.Open,FileAccess.Read); byte[] infbytes = new byte[(int)fs.Length]; fs.Read(infbytes, 0, infbytes.Length); fs.Close(); return infbytes; 2.将字节流写入文

  • C# FileStream读写的文本操作代码分析

    FileStream对象表示在磁盘或网络路径上指向文件的流. 可以使用FileStream 类对文件系统上的文件进行读取.写入.打开.关闭等. 废话不说,开始操作. 1.拖好控件.必须滴,将除了要写文件的文本框外,其他的文本框的 ReadOnly 属性均设为 True ! 2.开始"选择文件"操作 privatevoid btnReadChoose_Click(object sender, EventArgs e) { //创建 打开文件 对话框,可以直接拖控件哈.. OpenFile

  • C#流类FileStream学习使用笔记

    static void Main(string[] args) { //创建FileStream对象需要指定 文件名,打开模式,访问模式,共享模式 //1.调用本身的构造函数创建流 FileStream fs1 = new FileStream(@"F:\1.txt", FileMode.Open, FileAccess.ReadWrite,FileShare.ReadWrite); //2.利用File类或者FileInfo类的Open方法 //FileStream fs2 = Fi

  • asp.net(C#)中上传大文件的几中常见应用方法

    几种常见的方法,本文主要内容包括: 第一部分:首先我们来说一下如何解决ASP.net中的文件上传大小限制的问题,我们知道在默认情况下ASP.NET的文件上传大小限制为2M,一般情况下,我们可以采用更改Web.Config文件来自定义最大文件大小,如下: 这样上传文件的最大值就变成了4M,但这样并不能让我们无限的扩大 MaxRequestLength的值,因为ASP.NET会将全部文件载入内存后,再加以处理.解决的方法是利用隐含的 HttpWorkerRequest,用它的GetPreloaded

  • c#通过DES加密算法加密大文件的方法

    本文实例讲述了c#通过DES加密算法加密大文件的方法.分享给大家供大家参考.具体实现方法如下: using System.Collections; using System.Configuration; using System.Data; using System.Linq; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.HtmlControls; using Syst

  • C#中基于流的XML文件操作笔记

    System.Xml.XmlReader和System.Xml.XmlWriters是两个抽象类,XmlReader提供了对于XML数据的快速,非缓存,只进模式的读取器,XmlWriter表示一个编写器,该编写器提供快速,非缓存,只进的方式来生成包含XML数据的流文件. XmlReader与SAX读取器类似,不过前者是提取模式(只进只读的游标),后者是推送模式(将事件推送到应用程序). XmlReader的优点是: 1. 简化状态管理 2.可以有多个输入流 3.提取模式可以作为推送模式的基础,反

  • C#从文件流读取xml文件到DataSet并显示的方法

    本文实例讲述了C#从文件流读取xml文件到DataSet并显示的方法.分享给大家供大家参考.具体实现方法如下: 复制代码 代码如下: DataSet ds= new DataSet (); FileStream fs = new FileStream (Server.MapPath=("somexml.xml"),FileMode.Open,FileAccess.Read); ds.ReadXml (fs); DataGrid1.DataSource = ds; DataGrid1.D

  • C#使用文件流读取文件的方法

    本文实例讲述了C#使用文件流读取文件的方法.分享给大家供大家参考.具体如下: using System; using System.IO; namespace Client.Chapter_11___File_and_Streams { public class OpenExistingFile { static void Main(string[] args) { FileInfo MyFile = new FileInfo(@"c:\Projects\Testing.txt");

  • C#基础知识之FileStream

    一.FileStream的基础知识 属性:          CanRead 判断当前流是否支持读取,返回bool值,True表示可以读取          CanWrite 判断当前流是否支持写入,返回bool值,True表示可以写入 方法:          Read() 从流中读取数据,返回字节数组          Write() 将字节块(字节数组)写入该流          Seek() 设置文件读取或写入的起始位置          Flush() 清除该流缓冲区,使得所有缓冲的数

  • C# FileStream文件读写详解

    FileStream对象表示在磁盘或网络路径上指向文件的流.这个类提供了在文件中读写字节的方法,但经常使用StreamReader或StreamWriter执行这些功能.这是因为FileStream类操作的是字节和字节数组,而Stream类操作的是字符数据.字符数据易于使用,但是有些操作,比如随机文件访问(访问文件中间某点的数据),就必须由FileStream对象执行,稍后对此进行介绍. 还有几种方法可以创建FileStream对象.构造函数具有许多不同的重载版本,最简单的构造函数仅仅带有两个参

  • C#通过流写入数据到文件的方法

    本文实例讲述了C#通过流写入数据到文件的方法.分享给大家供大家参考.具体实现方法如下: using System; using System.IO; public class WriteFileStuff { public static void Main() { FileStream fs = new FileStream("c:\\tmp\\WriteFileStuff.txt", FileMode.OpenOrCreate, FileAccess.Write); StreamWr

随机推荐