我正在尝试为我们的消息传递(WCF)组件构建一个小工具。这个想法是基于先前的跟踪日志给出响应以进行测试。由于SOAP消息非常大,我们倾向于拥有巨大的跟踪文件。我想要做的就是从最后一行开始逐行读取(从最新到最旧),以便构建我的回应。任何人都有任何想法我怎么能在.NET中做到这一点?看来FileStream类只支持正向读取。从头开始读取文件
从头开始读取文件
回答
如果这些文本文件,我有ReverseLineReader
(或一些这样的)在MiscUtil,你可能会发现有用的。它只支持某些编码(Unicode,UTF-8或任何固定的单字节编码),但希望这对你来说已经足够了。
它通过一个迭代器返回字符串,所以你可以使用LINQ来限制你读多少等,并且它们被懒惰地读取。
我假设你实际上并不想读整个文件?如果你这样做,我会建议使用File.ReadAllLines
,然后扭转由此产生的阵列:)
谢谢。我会看看它。但是,这个想法是获得关于如何实现它自己的指导,而不是已经完成的解决方案的链接:)。 (用于学习目的) – 2010-01-08 13:33:20
是的,我不想读取内存中的整个文件。涉及的跟踪日志相当大 – 2010-01-08 13:34:57
@AZ:这非常棘手,因为你基本上必须读取一个缓冲区并向后查找换行符,并将各种事情考虑在内。我建议你尝试从现有的代码中学习:) – 2010-01-08 14:52:51
- 1. 如何从头再次开始从文本中读取行?
- 2. 从一开始就读取一个字节的文件从开始到开始
- 3. 从CSV文件的字符串开始读取CSV文件
- 4. 如何在TCL中从头开始读取文件(以相反顺序)?
- 5. 如何使StreamReader从文本文件的开头读取
- 6. 在Java Web中读取文件开始
- 7. 开始从特定行中读取文本文件
- 8. 如何重新启动StreamReader以开始读取文件的开头
- 9. 从文件开头到指定字节的C++读取
- 10. UINavigationController从头开始?
- 11. 从特定行开始读取目录中的多个文件
- 12. 从第二行开始读取文件LabView
- 13. 在java中读取csv文件从第3行开始
- 14. 开始从一个特定的行读取文件
- 15. 如何开始使用PHP从指定行读取txt文件?
- 16. 如何在web开始从jar文件中读取目录
- 17. C++使用while循环读取文件,从“x”行开始
- 18. 如何从Julia开始读取一个x字节的文件?
- 19. 读取/写入文件头
- 20. 从开头读取所有消息
- 21. 使用jmeter读取csv(从x开始)
- 22. 如何让DataReader从一开始就重新开始读取?
- 23. 从头开始创建
- 24. 从头开始的UIPageViewController
- 25. 从头开始在混帐?
- 26. 从头开始TDD项目
- 27. 从头开始显示scale_fill_manual
- 28. 从.cpp文件中的头文件读取枚举(C++)
- 29. 如何从文件中读取从任意换行开始线在Python
- 30. 开始读取和Python的
另请参见:[获取超大文本文件的最后10行> 10GB c#](http://stackoverflow.com/questions/398378 ),[如何用C#中的迭代器反向读取文本文件](http://stackoverflow.com/questions/452902) – hippietrail 2012-11-05 19:14:09