隐藏

C#读写txt文件的两种方法介绍

发布:2021/11/30 14:40:44作者:管理员 来源:本站 浏览次数:884

1.添加命名空间


System.IO;


System.Text;


2.文件的读取


(1).使用FileStream类进行文件的读取,并将它转换成char数组,然后输出。

复制代码


       byte[] byData = new byte[100];

       char[] charData = new char[1000];

       public void Read()

       {

           try

           {

               FileStream file = new FileStream("E:\\test.txt", FileMode.Open);

               file.Seek(0, SeekOrigin.Begin);

               file.Read(byData, 0, 100); //byData传进来的字节数组,用以接受FileStream对象中的数据,第2个参数是字节数组中开始写入数据的位置,它通常是0,表示从数组的开端文件中向数组写数据,最后一个参数规定从文件读多少字符.

               Decoder d = Encoding.Default.GetDecoder();

               d.GetChars(byData, 0, byData.Length, charData, 0);

               Console.WriteLine(charData);

               file.Close();

           }

           catch (IOException e)

           {

               Console.WriteLine(e.ToString());

           }

       }

   


复制代码


(2).使用StreamReader读取文件,然后一行一行的输出。

复制代码


   public void Read(string path)

       {

           StreamReader sr = new StreamReader(path,Encoding.Default);

           String line;

           while ((line = sr.ReadLine()) != null)

           {

               Console.WriteLine(line.ToString());

           }

       }


复制代码


3.文件的写入

(1).使用FileStream类创建文件,然后将数据写入到文件里。

复制代码


       public void Write()

       {

           FileStream fs = new FileStream("E:\\ak.txt", FileMode.Create);

           //获得字节数组

           byte[] data = System.Text.Encoding.Default.GetBytes("Hello World!");

           //开始写入

           fs.Write(data, 0, data.Length);

           //清空缓冲区、关闭流

           fs.Flush();

           fs.Close();

       }


复制代码


(2).使用FileStream类创建文件,使用StreamWriter类,将数据写入到文件。

复制代码


       public void Write(string path)

       {

           FileStream fs = new FileStream(path, FileMode.Create);

           StreamWriter sw = new StreamWriter(fs);

           //开始写入

           sw.Write("Hello World!!!!");

           //清空缓冲区

           sw.Flush();

           //关闭流

           sw.Close();

           fs.Close();

       }


复制代码


以上就完成了,txt文本文档的数据读取与写入。