,写文件为什么越来越慢,后面几百万条记录简直就和爬一样

求助,写文件为什么越来越慢,后面几百万条记录简直就和爬一样for(inti0iiMaxi++){........省略部分代码

求助,写文件为什么越来越慢,后面几百万条记录简直就和爬一样
for   (int   i   =   0   ;   i   <   iMax;   i++)
{
    ........   省略部分代码
        try
        {
                pFile   =   fopen(sFileName.c_str(),   "a+ ");
                fputs(sLine.c_str(),   pFile);
        }
        catch(...)
        {
                return;
        }
}
fclose(pFile)

高手来指点下,是不是一边写还要释放什么资源?

[解决办法]
把pFile = fopen(sFileName.c_str(), "a+ ");放到for循环前面
否则你要打开iMax次文件
[解决办法]
pFile = fopen(sFileName.c_str(), "a+ ");

放到外面去就可以了
[解决办法]
把数据连接成一个大缓冲区后写文件,减少写入次数。