日期:2014-05-17  浏览次数:20974 次

请问C#如何读取.TXT文件 ????????????
有一个TXT文件 070613.TXT  里面分行记录一些规则数据,如:
070613051300234k
070613051300245k
070613051300254k
070613051300263k
.
.
.
每一行字符长度都一样

请问当文件发生变化的时候(增加一行新的数据)如何触发C#读取新的数据?
------最佳解决方案--------------------
刚才给的示例代码你有无试验?

那个就是对指定的test.txt文件的监控哦
------其他解决方案--------------------
触发 不会  

定时检查一下大小 如果发生改变触发

或者检查更新时间 如果更新了 就。。。。

呵呵
------其他解决方案--------------------
做一个timer监测它的变化啊.
------其他解决方案--------------------
C#  有内置的类 可用于监视文件变化 LZ可以找找看看~  肯定是有的
------其他解决方案--------------------
FileSystemWatcher 好像是这个
------其他解决方案--------------------
//请问C#如何读取.TXT文件 ?
用StreamReader

我只看标题,内容文不对题,就不管了
------其他解决方案--------------------
txt读取不难啊, 读取数据
if (!File.Exists(MapPath('070613.txt'))) 
   {
    Response.Write("文件"+MapPath("070613.txt")+"打开出错");
    return;
   }
   StreamReader txtread = new StreamReader(MapPath('weather.txt'), System.Text.Encoding.Default);
   String txt = txtread.ReadToEnd();
   txtread.Close();

再对txt进行分析
不过重复读取txt有点慢, 最好是检测文档的文件大小是否改变, 如果改变就读取, 没有改变就pass
------其他解决方案--------------------
FileSystemWatcher watcher = new FileSystemWatcher(@"d:\testfloder","Test.txt");
 watcher.Changed += new FileSystemEventHandler(watcher_Changed);
 watcher.EnableRaisingEvents = true;




private void watcher_Changed(object sender, FileSystemEventArgs e)
        {
            MessageBox.Show("File was Changed!");
        }

------其他解决方案--------------------
感谢各位
不过我是新手  还请大家帮帮忙  谢谢谢谢
------其他解决方案--------------------
希望能当C#程序启动后  会自动监控txt文件的变化情况

------其他解决方案--------------------
http://wayfarer.cnblogs.com/archive/2004/04/20/6712.html
这个会对你有用的
------其他解决方案--------------------

lz 还有什么困难??


我已经给了示例代码~~
------其他解决方案--------------------
jiatong1981(末日之痕) 

非常感谢

不过能实现对TXT文件的监控吗
------其他解决方案--------------------
在实验  有些语法错误
我在改  由于是新手  有些不会  呵呵
------其他解决方案--------------------
jiatong1981(末日之痕)  正解
------其他解决方案--------------------
实验成功  呵呵  非常感谢
------其他解决方案--------------------
我想说的是,用filesystemwatcher监听这个文件的时候,无法对其进行更改,因为该线程一直都占用着这个资源,如何才能避免这种情况?