最快的读取文件的方法

zhengqiy 2011-03-18 08:38:55
有人说JAVA的ASX是最快的读取方法,那C#有没有最快的?注意,我要的是最快的,文件很大
...全文
240 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
zerodegrees 2011-03-18
  • 打赏
  • 举报
回复
[Quote=引用 7 楼 linux7985 的回复:]
如果文件10G,你也要全部读进去吗?

读文件速度关键还是在硬件及操作系统上,

如果说是要特定数据,那和算法有关
[/Quote]

有道理,和硬件也有关~~~
烈火蜓蜻 2011-03-18
  • 打赏
  • 举报
回复
如果文件10G,你也要全部读进去吗?

读文件速度关键还是在硬件及操作系统上,

如果说是要特定数据,那和算法有关
chengjia2284 2011-03-18
  • 打赏
  • 举报
回复
对于加快读取的速度,可以通过多线程的方法把文件分块,分批读取,然后合并起来。当然分块后要标识块的索引,在合并的时候按索引顺序合并。

一般来说应用了缓存的流会更高效,即使用BufferedStream的流会更高效,但是BufferedStream和StreamReader之间不存在可比性,因为StreamReader只是一个用于读取流的工具,在使用的时候可以采用直接用StreamReader来读取流数据,也可以为流的读取添加缓存,即BufferedStream. 换句话说,BufferedStream可以和普通Stream比较,BufferedStream在Stream的基础上增加了缓冲功能。而Stream和BufferedStream都可以用StreamReader来读取。
zhengqiy 2011-03-18
  • 打赏
  • 举报
回复
请高手贴上代码,以便比较
种草德鲁伊 2011-03-18
  • 打赏
  • 举报
回复
多线程不行嘛
  • 打赏
  • 举报
回复
JSON
lizhibin11 2011-03-18
  • 打赏
  • 举报
回复
对这个问题我比较疑惑,假如一个文件存储在硬盘的一面,如果采用多线程来读,磁头在不同簇之间来回切换和顺序读取,哪个更快。
autumnm1981 2011-03-18
  • 打赏
  • 举报
回复
Java 的 ASX?
楼主是说SAX吗?
如果是,那楼主问的应该是C#中如何读取、解析XML文件最快吧?
如果还是,那我的回答是:微软的类库又专门读取、解析XML文件的类。效率如何不太清楚,因为没用过第三方的产品来做比较。不过微软提供的这些类,用起来不是很方便。
Hamber_Bao 2011-03-18
  • 打赏
  • 举报
回复
System.IO;

该命名空间下有FileStream文件流类

StreamReader StreamWriter都可以试试的···

110,535

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧