用二进制方式打开超大的文本文件比文本方式快吗?如果是,给我一个例子.

解决方案 »

  1.   

    N个G如何打开,没有试过。留个地址[email protected]想学习一下
      

  2.   

    to shonhen(问题多)
    能否贴出代码
      

  3.   

    N个G!!!我的老天!![email protected] 请给我一份!!!
      

  4.   

    没有想像中那么难,数据是按页显示出来的,并不是一次显示所有数据,所有每次只装入一页(1024byte或更多)的数据,这样再大的文件都能“打开”,哪怕是整个硬盘。
      

  5.   

    to footballboy这是在C++Builder中的一点代码:void TfrmMain::MemoryToEdit()
    {
        BYTE pBuf[0x10];
        int nSize;
        AnsiString szBuf;
        char cValue;    FEditMem->Seek(0, soFromBeginning);
        for (int i=0; i<0x10; i++)
        {
            nSize = FEditMem->Read(pBuf, 0x10);
            for (int x=0; x<0x10; x++)
            {
                if (x < nSize)
                {
                    szBuf.sprintf("%.2X", pBuf[x]);
                    sgData->Cells[x+1][i+1] = szBuf;
                    cValue = ((pBuf[x] >= 0x20) && (pBuf[x] <= 0x7E)) ? pBuf[x] : '.';
                }else{
                    sgData->Cells[x+1][i+1] = "??";
                    cValue = '?';
                }
                sgValue->Cells[x+1][i+1] = AnsiString(cValue);
            }
        }
    }
      

  6.   

    >shonhen(问题多)
    再详细点吧!不好意思,我是C++Bulider的初学者!
      

  7.   

    to Lava_sdb(大波)有很多书上都有这类范例,可以用网上下载几本来看看。