关于文件操作的问题!急!
假设我手头上有一个TXT文件a.txt内容如下:
abcdefghijklmnopqrstuvwxyz
现在我需要在abc的后面插入xyz使a.txt的内容变成:
abcxyzdefghijklmnopqrstuvwxyz
我已经想到了一种办法,代码如下:
int iFileHandle=FileOpen("c:\\a.txt",fmOpenReadWrite);
int iFileLength=FileSeek(iFileHandle,0,2);
FileSeek(iFileHandle,0,0);
char *pszBuffer=new char[iFileLength+1];
FileRead(iFileHandle, pszBuffer, iFileLength);
pszBuffer[iFileLength]='\0';
AnsiString as1=pszBuffer;
delete [] pszBuffer;
as1=as1.SubString(1,3)+"xyz"+as1.SubString(4,iFileLength);
pszBuffer=new char[as1.Length()+1];
pszBuffer=as1.c_str();
FileSeek(iFileHandle,0,0);
FileWrite(iFileHandle,pszBuffer,iFileLength+3);
FileClose(iFileHandle);
但是,这种办法对大容量的TXT文件(大概10MB)不行,请问大哥有没有其他插入的办法,而且可以推广到对大容量TXT文件实现插入的.