0

为什么缓慢读取文件进行搜索会更好?

//if (!read_fields[x] || !ok)
                    //{
                    //    if (l > 0) Seek(l, SeekOrigin.Current);
                    //    read[x] = null;
                    //    continue;
                    //}

                    byte[] bx = new byte[l];
                    if (l > 0) Read(bx, 0, l);

                    if (!read_fields[x] || !ok)
                    {
                        read[x] = null;
                        continue;
                    }

我的速度测试表明搜索非常慢!

4

1 回答 1

2

Seek - 将此流的当前位置设置为给定值。 读取- 从流中读取一个字节块并将数据写入给定缓冲区。

因此,通过寻找您重新定位读取位置 - 这是一个耗时的过程。如果你简单地阅读 - 你顺序地从文件中读取。

于 2013-07-18T13:24:36.207 回答