最近遇到一个问题。就是从文本数据中查找相关信息的。 
数据格式如下:20655|OTB20570|.28836|2.55||||0||DP|2.55|
20656|OTB20570|.271128|2.15||||0||PWH|2.15|
20657|OTB20571|.28836|2.65||||0||DP|2.65|就是通过 20655 这个ID 可以查找后面的相关数据。
我本来用 StreamReader.ReadLine 的方法逐行读取后查找。结果当数据大的时候查找比较慢。经过询问了一些人,听说给文本数据的头部加入个索引区,用索引查找。
可是我自己比较菜,不知道如何入手解决这个问题。 希望各位大侠指点一下。 先谢了。

解决方案 »

  1.   

    http://www.codeproject.com/cs/files/winsearchfile.asp
      

  2.   

    raozhiven(raozhiven) 大哥。我还是有点不明白。 
    就是这个索引文件 的查找要用什么方式去读? 那个地址应该如何获取呢?
      

  3.   

    索引文件相对数据文件很小。可以直接一行一行地读。地址即是数据文件在写数据时的地址。 FileStream.Position
      

  4.   

    那比如我现在这样的文件是不是应该变成这样了。20655,0
    20665,0+第一条长度
    20657,0+第一条长度+第二条长度
    OTB20570|.28836|2.55||||0||DP|2.55|
    OTB20570|.271128|2.15||||0||PWH|2.15|
    OTB20571|.28836|2.65||||0||DP|2.65|