C#编程-实现在文本文件中的读和写

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

实现在文本文件中的读和写

Stream类用于从文本文件读取数据和向文本文件写入数据。它是一个抽象类,支持向流读写字节。如果文件的数据仅是文本,那么您可以使用StreamReader类和StreamWriter类来完成相应的读和写任务。


StreamReader类

StreamReader类继承自从抽象类TextReader。TextReader类表示可以读取一系列字符的读程序。

以下代码段实现了StreamReader类:

	FileStream fs = new FileStream("Myfile.txt",FileMode.Open,FileAccess.Read);
	StreamReader sr = new StreamReader(fs);
	sr.BaseStream.Seek(0,SeekOrigin.Begin);
	string str = sr.ReadLine();

在上述代码段中,Seek()方法允许在文件内将读/写位置移动到任何位置。该方法由两个参数,一个字节位置和一个引用点。字节位置是相对于引用点的。这些引用点由SeekOrigin类的属性表示。
各种引用点有:

  1. Begin:提供搜寻引用位置作为流的开始。
  2. Current:提供搜寻引用位置作为流中的当前位置和引用点。
  3. End:提供搜寻引用位置作为流的结束。

下表描述了StreamReader类的一些常用方法。

方法 描述
Close() 关闭StreamReader类的对象和流,并且释放与读程序相关的所有系统资源
Peek() 返回下一个可用的字符当不使用它
Read() 从流中读取下一个字符或下一个字符集
ReadLine() 从当前流读取一行字符,并且将数据作为字符串返回
Seek() 允许在文件内将读/写位置移动到任何位置

以下代码实现StreamReader类来从文件读取数据:

	using System;
	using System.IO;
	class FileRead
	{
   
   
		public void ReadData()
		{
   
   
			FileStream fs = new FileStream("Myfile.txt",FileMode.Open,FileAccess.Read);
			StreamReader sr = new StreamReader(fs);
			//Position the file pointer at the begginning of the file
			sr.BaseStream.Seek(0,SeekOrign.Begin);
			//Read till the end of the file is encountered
			string str = sr.ReadLine();
			while ( str != null )
			{
   
   
				Console.WriteLine("{0}",str);
				str = sr.ReadLine();
			}
			//close the writer and file
			sr.Close();
			fs.Close();
		}
		public static 

相关推荐

  1. C++文本文件

    2024-01-10 14:02:02       31 阅读
  2. Qt : 实现串口同步异步消息

    2024-01-10 14:02:02       42 阅读
  3. C#配置文件AppSettings

    2024-01-10 14:02:02       20 阅读
  4. c++文件

    2024-01-10 14:02:02       58 阅读
  5. C++文件

    2024-01-10 14:02:02       70 阅读

最近更新

  1. docker php8.1+nginx base 镜像 dockerfile 配置

    2024-01-10 14:02:02       98 阅读
  2. Could not load dynamic library ‘cudart64_100.dll‘

    2024-01-10 14:02:02       106 阅读
  3. 在Django里面运行非项目文件

    2024-01-10 14:02:02       87 阅读
  4. Python语言-面向对象

    2024-01-10 14:02:02       96 阅读

热门阅读

  1. 爬虫实战——结合多进程、线程池爬取多张图片

    2024-01-10 14:02:02       65 阅读
  2. 45. 跳跃游戏 II

    2024-01-10 14:02:02       55 阅读
  3. 探寻C++经典程序之美

    2024-01-10 14:02:02       49 阅读
  4. 用js的生成a标签下载文件,同时设置请求头

    2024-01-10 14:02:02       54 阅读
  5. FRIDA 调用原生函数时使用补丁也生效

    2024-01-10 14:02:02       60 阅读