当前位置: 首页 > 编程笔记 >

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

糜征
2023-03-14
本文向大家介绍C#使用FileStream循环读取大文件数据的方法示例,包括了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#程序设计有所帮助。

 类似资料:
  • 本文向大家介绍C#使用FileStream对象读写文件,包括了C#使用FileStream对象读写文件的使用技巧和注意事项,需要的朋友参考一下 在项目开发中经常会涉及到对文件的读写,c# 提供了很多种方式来对文件进行读写操作,今天来说说FileStream 对象。 FileStream表示在磁盘或网络路径上指向文件的流。一般操作文件都习惯使用StreamReader 和 StreamWriter,

  • 本文向大家介绍C# FileStream复制大文件,包括了C# FileStream复制大文件的使用技巧和注意事项,需要的朋友参考一下 本文实例为大家分享了C# FileStream复制大文件的具体代码,供大家参考,具体内容如下 即每次复制文件的一小段,以节省总内存开销。当然,本机复制也可以采用.NET内部的System.IO.File.Copy方法。 以上就是本文的全部内容,希望对大家的学习有所

  • 本文向大家介绍C#使用文件流读取文件的方法,包括了C#使用文件流读取文件的方法的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了C#使用文件流读取文件的方法。分享给大家供大家参考。具体如下: 希望本文所述对大家的C#程序设计有所帮助。

  • 本文向大家介绍php 使用file_get_contents读取大文件的方法,包括了php 使用file_get_contents读取大文件的方法的使用技巧和注意事项,需要的朋友参考一下 当我们遇到文本文件体积很大时,比如超过几十M甚至几百M几G的大文件,用记事本或者其它编辑器打开往往不能成功,因为他们都需要把文件内容全部放到内存里面,这时就会发生内存溢出而打开错误,遇到这种情况我们可以使用PHP

  • 本文向大家介绍C# FileStream实现大文件复制,包括了C# FileStream实现大文件复制的使用技巧和注意事项,需要的朋友参考一下 FileStream缓冲读取和写入可以提高性能。FileStream读取文件的时候,是先将流放入内存,经Flush()方法后将内存中(缓冲中)的数据写入文件。如果文件非常大,势必消耗性能。特封装在FileHelper中以备不时之需。 参考文章:C# Fil

  • 本文向大家介绍C# FileStream复制大文件功能,包括了C# FileStream复制大文件功能的使用技巧和注意事项,需要的朋友参考一下 FileStream缓冲读取和写入可以提高性能。每次复制文件的一小段,以节省总内存开销。当然,本机复制也可以采用.NET内部的System.IO.File.Copy方法。 FileStream读取文件的时候,是先讲流放入内存,经Flash()方法后将内存中