摘要:.NET4.0 + MemoryMapping + ReadByte()该方法的思路主要是通过内存映射的原理,访问文件内容,由于在.net环境下不能一次性映射太大的文件,所以仍然采用分块映射的方式:主要代码如下: /// <summary> /// MemoryMapping + ReadByte() /// </summary> unsafe static void CalulateLine_MemoryMapping_ReadByte(uint oneBlockSize) { const strin...
阅读全文
01 2011 档案
摘要:最近在和一个朋友的交流中,遇到这么一个问题,如何能较快对一个较大的文本文件(1G或更大)的文本行数进行统计。如果不考虑效率,要统计一个文本的行数其实一点也不难,但是如果需要在较快的时间内做完,恐怕就得考虑实现方法了。为此,自己尝试了几种方法,在这里把这几种方法拿出来和大家讨论一下。首先是生成测试数据的代码: const int COL_NUM = 30; const int LINE_NUM = 10000000; const string FILE_NAME = @"d:\test.csv"; /// <summary> ...
阅读全文