C# 读取TXT文件程序

C# 读取TXT文件程序
2008-06-11 09:56
首先看我的截图
总结:
1、Niit.txt 默认在 File_read/bin/Debug 文件下! 如果你不想程序运行报错,那么就在这个文件下 建立1)因为这里我们是读取文本,所以Niit.txt,内容自己写一下!注意两点
1.1)文件最好不要写中文的,否则运行结果用 ?代替中文~
2.2)最重要的,你写完了内容要保存文本后再运行,才会显示你添加的内容
2、读写文本操作方法来源于 System.IO 命名空间,所以程序开头就要 Using System.IO
3、关于 sr.BaseStream.Seek(0, SeekOrigin.Begin);
               在给出结论之前,首先看下我的思路,从文本指定位置读取文本内容
               Niit.txt 内容如下:
               1
               2
               3
               4
               如果从 3 开始读取,sr.BaseStream.Seek(1, SeekOrigin.Begin);应该如何修改呢?
               这里感谢 CSDN 论坛 saucer(思归) 给我的解疑,原文如下:
               这个偏移量是字节数,对于你的文本文件,在Windows上,回车是2个字节(13,10),所以,在3之前,有6个字节,
                sr.BaseStream.seek(6,SeekOrigin.Begin)
                其实,混合字节数和文字不是很好的方法
给出代码:
using System; using System.IO;
namespace File_read {               class FileRead               {                   static void Main(string[] args)                   {                       //创建 FileRead 的对象 fr                       FileRead fr = new FileRead();                       //调用 FileRead 类内的 ReadData 方法                       fr.ReadData();                       //程序暂停一下,看看结果~                       Console.ReadLine();
                  }                   // ReadData 方法                   public void ReadData()                   {                       //创建 FileStream 的对象,说白了告诉程序,文件在那里,对文件如何处理,对文件内容采取的处理方式                       FileStream fs = new FileStream("Niit.txt", FileMode.Open, FileAccess.Read);                       //仅 对文本 进行 读写操作                       StreamReader sr = new StreamReader(fs);                       //定位操作点,begin 是一个参考点                       sr.BaseStream.Seek(0, SeekOrigin.Begin);                       //读一下,看看文件内有没有内容,为下一步循环 提供判断依据                       //sr.ReadLine() 这里是 StreamReader的方法 可不是 console 中的~                       string str = sr.ReadLine();
                      //如果 文件有内容                       while (str != null)                       {                           //输出字符串,str 在上面已经定义了 读入一行字符                           Console.WriteLine("{0}", str);                           //这里我的理解是 当输出一行后,指针移动到下一行~                           //下面这句话就是 判断 指针所指这行是否有内容~                           str = sr.ReadLine();
                      }                       //关闭文件,注意顺序,先对文件内部进行关闭,然后才是文件~                       sr.Close();                       fs.Close();                   }               }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值