C#读写txt文件方法汇总

一、官方文档:

文件和流I/O(输入/输出):

https://docs.microsoft.com/zh-cn/dotnet/standard/io/

文件流 FileStream

https://docs.microsoft.com/zh-cn/dotnet/api/system.io.filestream?view=net-5.0

文件流FileStream 官方案例:

https://docs.microsoft.com/zh-cn/dotnet/standard/io/how-to-read-and-write-to-a-newly-created-data-file

 

二、案例

案例一:https://www.cnblogs.com/akwwl/p/3240813.html

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

 

1.添加命名空间

  System.IO;

  System.Text;

2.文件的读取

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

C#读写txt文件方法汇总
        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());
            }
        }
    
C#读写txt文件方法汇总

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

C#读写txt文件方法汇总
    public void Read(string path)
        {
            StreamReader sr = new StreamReader(path,Encoding.Default);
            String line;
            while ((line = sr.ReadLine()) != null) 
            {
                Console.WriteLine(line.ToString());
            }
        }
C#读写txt文件方法汇总

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

C#读写txt文件方法汇总
        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();
        }
C#读写txt文件方法汇总

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

C#读写txt文件方法汇总
        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();
        }
C#读写txt文件方法汇总

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

 

案例二:https://www.cnblogs.com/zoujinhua/p/11325062.html

C#文件流的读写

1.文件流写入的一般步骤

  1.定义一个写文件流

  2.定义一个要写入的字符串

  3.完成字符串转byte数组

  4.把字节数组写入指定路径的文件

  5.关闭文件流

2.文件流读入的一般步骤

  1.定义一个读文件流

  2.开辟一块足够大的字节数组内存空间

  3.把指定文件的内容读入字节数组

  4.完成字节数组转字符串操作

  5.关闭文件流

具体代码如下:

C#读写txt文件方法汇总 C#读写txt文件方法汇总
 1 using System;
 2 using System.IO;
 3 using System.Text;
 4 namespace LearnFileStream
 5 {
 6     class Program
 7     {
 8         string path = @"E:\AdvanceCSharpProject\LearnCSharp\LearnFileStream.txt";
 9 
10         private void TestWrite()
11         {
12             //定义写文件流
13             FileStream fsw = new FileStream(path, FileMode.OpenOrCreate);
14             //写入的内容
15             string inputStr = "Learn Advanced C Sharp";
16             //字符串转byte[]
17             byte[] writeBytes = Encoding.UTF8.GetBytes(inputStr);
18             //写入
19             fsw.Write(writeBytes, 0, writeBytes.Length);
20             //关闭文件流
21             fsw.Close();
22         }
23 
24         private void TestRead()
25         {
26             //定义读文件流
27             FileStream fsr = new FileStream(path, FileMode.Open);
28             //开辟内存区域 1024 * 1024 bytes
29             byte[] readBytes = new byte[1024 * 1024];
30             //开始读数据
31            int count = fsr.Read(readBytes, 0, readBytes.Length);
32             //byte[]转字符串
33             string readStr = Encoding.UTF8.GetString(readBytes, 0, count);
34             //关闭文件流
35             fsr.Close();
36             //显示文件内容
37             Console.WriteLine(readStr);
38         }
39         static void Main(string[] args)
40         {
41             new Program().TestWrite();
42             new Program().TestRead();
43         }
44     }
45 }
C#读写txt文件方法汇总 C#读写txt文件方法汇总

 

 

 

 

 

 

上一篇:文件流操作


下一篇:I/O(7)——基于Stream的大文件拷贝、使用Stream做文件加密