⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 subject_38419.htm

📁 vc
💻 HTM
字号:
<p>
序号:38419 发表者:不知道 发表日期:2003-05-03 10:41:54
<br>主题:怎样修改文件内容?
<br>内容:我有个文件想设置文件大小的最大值,当文件达到制定大小时将最开始的内容删除掉,将新内容添加在最后。应该怎么办?
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
回复者:---信风--- 回复日期:2003-05-03 11:08:45
<br>内容:你在增加新的内容判断是否超出了预定的大小,如果没有,用追加的方式打开文件,进行写操作:<BR>FILE *fp = fopen( szFileName, "a" );<BR>...&nbsp;&nbsp;&nbsp;&nbsp;// 用fwrite/fprintf.. 写文件<BR>fclose( fp );<BR>如果超出了,先把文件中你要保留的内容读出来,关闭文件然后以写方式打开。<BR>FILE *fp = fopen( szFileName, "r" );<BR>...&nbsp;&nbsp;&nbsp;&nbsp;// 用fread/fscanf.. 读文件<BR>fclose( fp );<BR><BR>fp = fopen( szFileName, "w" );<BR>...&nbsp;&nbsp;&nbsp;&nbsp;// fwirte/fprintf.. 把你保留的内容写回去<BR>...&nbsp;&nbsp;&nbsp;&nbsp;// 同上,写新加的内容。<BR>fclose( fp );<BR><BR><BR>我这里说的是fopen的读写方法,你也可以用CFile,CStdioFile,_open等方法读写文件。<BR>得到当前文件大小的函数有:<BR>DWORD GetFileSize( <BR>HANDLE hFile,&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; // handle of file to get size of <BR>LPDWORD lpFileSizeHigh&nbsp;&nbsp;// address of high-order word for file size<BR>);<BR> <BR>long _filelength( int handle );<BR>__int64 _filelengthi64( int handle );<BR>
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
回复者:不知道 回复日期:2003-05-03 12:12:57
<br>内容:谢谢你的答复,这样的化如果已经到了制定的大小,每次添加删除数据都要将文件全部读出再几乎全部写入,挺麻烦的,有没有更好的办法那?
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:---信风--- 回复日期:2003-05-03 12:27:35
<br>内容:读写文件就是这样的,你尽量在内存里做交换吧
<br>
<a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p></blockquote>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -