📄 subject_34685.htm
字号:
<p>
序号:34685 发表者:Jack Sun 发表日期:2003-04-01 12:04:15
<br>主题:请教:一个C++读写二进制文件的问题?
<br>内容:我下面的代码执行后:<BR><BR>ifstream ifFile;<BR>ofstream ofFile;<BR>long count=0;<BR>char ch;<BR><BR>//以二进制方式打开一个图片<BR>ifFile.open("c:\\tc\\test\\f\\c.gif",ios::in,filebuf::binary); <BR><BR>//判断文件的长度<BR>while(!ifFile.eof())<BR>{<BR> ifFile.get(ch);<BR> count++;<BR>}<BR><BR>cout<<"File Length:"<<count<<endl;<BR>ifFile.close();<BR><BR>可得到的结果是:File Length:1<BR>请问我在什么地方写错了?
<br><a href="javascript:history.go(-1)">返回上页</a><br><a href=http://www.copathway.com/cndevforum/>访问论坛</a></p>
<hr size=1>
<blockquote><p>
<font color=red>答案被接受</font><br>回复者:max cai 回复日期:2003-04-01 12:50:18
<br>内容:#include<iostream><BR>#include<fstream><BR>using namespace std;<BR>int main()<BR>{<BR> ifstream ifFile;<BR> long count=0;<BR> char ch;<BR><BR> //以二进制方式打开一个图片<BR> ifFile.open("c:\\test.gif",ios::binary);// 注意<BR><BR> //判断文件的长度<BR> while(!ifFile.eof())<BR> {<BR> ifFile.get(ch);<BR> count++;<BR> }<BR><BR> cout<<"File Length:"<<count<<endl;<BR> ifFile.close();<BR> return 0;<BR>}<BR>output:<BR>File Length:5031<BR>Press any key to continue<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>
回复者:Jack Sun 回复日期:2003-04-01 13:12:24
<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>
回复者:Jack Sun 回复日期:2003-04-01 13:22:28
<br>内容:我用下面的方法拷贝文件,对于二进制文件来说没有问题,可是处理文本文件发现多出字符,比如原来文件(a.txt)内容为:abc,则用如下方法拷贝后得到的文件(b.txt)内容却变为:abc跟一个特殊符号,请问我如何解决?
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -