c# 如何反复读一个txt文件内容

如果我需从头至尾反复读一个txt文件,上次读完后使用fs.Seek(0,SeekOrigin.Begin);接着while(sr.Peek)>-1){sr.ReadLin... 如果我需从头至尾反复读一个txt文件,上次读完后使用 fs.Seek(0,SeekOrigin.Begin); 接着
while(sr.Peek)>-1) { sr.ReadLine();} 这个循环就不执行,请问如果不重新定义新 FileStream 和 StreamReader 有什么办法再次从头读取这个txt文件 ?
展开
 我来答
百度网友30a3645
2013-12-12 · TA获得超过531个赞
知道小有建树答主
回答量:446
采纳率:0%
帮助的人:177万
展开全部
01.C#读取TXT文件实现的一些总结:
02.1、Niit.txt 默认在 File_read\bin\Debug 文件下! 假如你不想程序运行报错,那么就在这个文件下建立
03.1)因为这里咱们是读取文本,所以Niit.txt,内容自己写一下!留心两点
04.1.1)文件最好不要写中文的,否则运行结果用 ?代替中文~
05.2.2)最首要 的,你写完了内容要保存文本后再运行,才会显示你添加的内容
06.2、读写文本操作要领来源于 System.IO 命名空间,所以程序开头就要 Using System.IO
C#读取TXT文件实现的一些总结:
1、Niit.txt 默认在 File_read\bin\Debug 文件下! 假如你不想程序运行报错,那么就在这个文件下建立
1)因为这里咱们是读取文本,所以Niit.txt,内容自己写一下!留心两点
1.1)文件最好不要写中文的,否则运行结果用 ?代替中文~
2.2)最首要 的,你写完了内容要保存文本后再运行,才会显示你添加的内容
2、读写文本操作要领来源于 System.IO 命名空间,所以程序开头就要 Using System.IO[csharp] view plaincopyprint?
01.3、关于 sr.BaseStream.Seek(0, SeekOrigin.Begin);
3、关于 sr.BaseStream.Seek(0, SeekOrigin.Begin);
[csharp] view plaincopyprint?
01.using System;
02.using System.IO;namespace File_read
03.{
04.class FileRead
05.{
06. static void Main(string[] args)
07. {
08.//建立 FileRead 的对象 fr
09.FileRead fr = new FileRead();
10.//调用 FileRead 类内的 ReadData 要领
11.fr.ReadData();
12.//程序暂停一下,看看结果~
13.Console.ReadLine(); }
14. // ReadData 要领
15. public void ReadData()
16. {
17.//C#读取TXT文件之建立 FileStream 的对象,说白了告诉程序,
18.//文件在那里,对文件如何 处理,对文件内容采取的处理方式
19.FileStream fs = new FileStream("Niit.txt", FileMode.Open, FileAccess.Read);
20.//仅 对文本 执行 读写操作
21.StreamReader sr = new StreamReader(fs);
22.//定位操作点,begin 是一个参考点
23.sr.BaseStream.Seek(0, SeekOrigin.Begin);
24.//读一下,看看文件内有没有内容,为下一步循环 提供判断依据
25.//sr.ReadLine() 这里是 StreamReader的要领 可不是 console 中的~
26.string str = sr.ReadLine();//假如 文件有内容
27.while (str != null)
28.{
29. //输出字符串,str 在上面已经定义了 读入一行字符
30. Console.WriteLine("{0}", str);
31. //这里我的理会是 当输出一行后,指针移动到下一行~
32. //下面这句话就是 判断 指针所指这行能无法 有内容~
33. str = sr.ReadLine();}
34.//C#读取TXT文件之关上文件,留心顺序,先对文件内部执行 关上,然后才是文件~
35.sr.Close();
36.fs.Close();
37. }
38.}
39.}
百度网友aac236c
2013-12-12 · 超过18用户采纳过TA的回答
知道答主
回答量:91
采纳率:0%
帮助的人:53.1万
展开全部
要重新读取就要先关闭流,清空缓存。 不然是不可以的。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式