readfrom.txt:内容         line1 tester1 0000 20071001224510 20071002083122 20060322    
- >writeto.txt:运行后内容 line1 tester1 0000 20071001224510 20071002083122 20060322    
- >write3.doc:运行后内容  abcdefghijklmnopqrstuvwxyz0123456789+-*/ 
上述readfrom.txt为原始文件,而writeto.txt,write3.txt是新建立的文件.所用的代码如下
char* pFileNamer="readfrom.txt";//读文件名称 
char* pFileNamew="writeto.txt"; //写文件名称 
char* pFileName3="writeto3.doc";//另一写名称 
char  str1[100];                //缓冲字符串 
CString str2="abcdefghijklmnopqrstuvwxyz0123456789+-*/"; 
TRY 
{//先打开各个文件 
CFile filer(pFileNamer, CFile::modeRead); 
CFile filew(pFileNamew, CFile::modeCreate ¦CFile::modeWrite); 
CFile file3(pFileName3, CFile::modeCreate ¦CFile::modeWrite); 
    //先定位再读写 
filer.SeekToBegin(); 
filew.SeekToBegin(); 
filer.Read(str1, 5); 
filew.Write(str1,5); 
    //先定位再读写 
filer.Seek(6,CFile::begin); 
filew.Seek(6,CFile::begin); 
filer.Read(str1, 7); 
filew.Write(str1,7); 
    // 
filer.Seek(14,CFile::begin); 
filew.Seek(14,CFile::begin); 
filer.Read(str1, 4); 
filew.Write(str1,4); 
    // 
filer.Seek(19,CFile::begin); 
filew.Seek(19,CFile::begin); 
filer.Read(str1, 14); 
filew.Write(str1,14); 
    // 
filer.Seek(34,CFile::begin); 
filew.Seek(34,CFile::begin); 
filer.Read(str1, 14); 
filew.Write(str1,14); 
    // 
filer.Seek(49,CFile::begin); 
filew.Seek(49,CFile::begin); 
filer.Read(str1, 8); 
filew.Write(str1,8); 
    // 
file3.Write(str2, strlen(str2)); 
    //最后关闭各个文件 
filer.Close(); 
filew.Close(); 
file3.Close(); 
} 
CATCH(CFileException,e) 
{ 
      #ifdef _DEBUG 
             afxDump < <"File could not be opened" < <e- >m_cause < <"\n"; 
      #endif 
} 
    END_CATCH
问:?
如果我想从readfrom.txt读下一行数据,然后把它写入writeto.txt中相应的地方,那我怎样进行定位啊,(即怎样结束本行,而使文件定位函数在2nd行,3rd行起作用啊)? 
我的意思也就是怎样从  "一个文件"  中直接读第N行中的数据,然后将其直接写入 "另一个文件"  的第i行 
比如:  
我想从readfrom.txt 内容如下:中读部分数据  
1st line data:line1 tester1 0000 20071001224510 20071002083122 20060322 British 伯明汉.英国  
2nd line data:line1 tester2 00A0 20071001224500 20071002083102 20060322 Hitachi ShenZhen(深圳)    
3rd line data:line1 tester3 0000 20071001224010 20071002083120 20060322 ###### 上海.蒲东  
我想让文件writeto.txt内容如下:  
1st line data:line1 tester1 0000 20071001224510 20071002083122 20060322   
2nd line data:line1 tester2 00A0 20071001224500 20071002083102 20060322    
3rd line data:line1 tester3 0000 20071001224010 20071002083120 20060322   
那我该如何处理呢?热情期待高手点拨!!!



											
	    

	