您好,欢迎来到[编程问答]网站首页   源码下载   电子书籍   软件下载   专题
当前位置:首页 >> 编程问答 >> C/C++ >> fwrite 改变内容

fwrite 改变内容

来源:网络整理     时间:2016/6/23 23:02:42     关键词:

关于网友提出的“ fwrite 改变内容”问题疑问,本网通过在网上对“ fwrite 改变内容”有关的相关答案进行了整理,供用户进行参考,详细问题解答如下:

问题: fwrite 改变内容
描述:

C语言

我用fwrite()将一个数组写入文件当中,发现原来是0x0D的地方全部变成0x0A, fwrite()怎么会改变数组的内容呢, 写入文件的话还有其他的函数吗?
fwrite(recvline, 1, nread, fp);

解决方案1:

fp = fopen("/mnt/nfs/ouput.jpg","ab+");
if( fp == NULL)
perror("fopen()");
if( fwrite(recvline, 1, nread, fp) != nread )
perror("fwrite()");
//在此处打印出写入的内容,对比一下,应该就知道是哪里的问题。fwrite应该不会去修改内容的。
int i=0;
char strlog[1024] = {0};
for(i=0;i<>
{
   sprintf(strlog,"%s 0x%x", strlog,recvline[i]);
}
puts(strlog);//打印对比一下看看
if( fclose( fp ) != 0 )
perror("fclose()"); 

解决方案2:

楼主,你代码本身没有问题,我想你读入和写出不是在同一个系统下造成的,因为linux和win对换行和回车的解释是不一样的。
http://tieba.baidu.com/p/1244155125
http://blog.sina.com.cn/s/blog_68281ec80100n4jt.html
上面两篇文章已经说的很详细了,你可以在同一个环境下试试,若没错,就证明这种说法


以上介绍了“ fwrite 改变内容”的问题解答,希望对有需要的网友有所帮助。
本文网址链接:http://www.codes51.com/itwd/2016943.html

相关图片

相关文章