用fstream读取和写入c中的二进制文件

用fstream读取和写入c中的二进制文件,第1张

概述我正在尝试编写简单的c代码来读写文件. 问题是我的输出文件小于原始文件,我找不到原因. 我有一个6.6 kb的图像,我的输出图像大约6.4 kb #include <iostream>#include <fstream>using namespace std;ofstream myOutpue;ifstream mySource;int main(){ 我正在尝试编写简单的c代码来读写文件.
问题是我的输出文件小于原始文件,我找不到原因.
我有一个6.6 kb的图像,我的输出图像大约6.4 kb

#include <iostream>#include <fstream>using namespace std;ofstream myOutpue;ifstream mySource;int main(){            mySource.open("im1.jpg",ios_base::binary);    myOutpue.open("im2.jpg",ios_base::out);    char buffer;    if (mySource.is_open())    {        while (!mySource.eof())        {            mySource >> buffer;                        myOutpue << buffer;        }    }    mySource.close();    myOutpue.close();        return 1;}
解决方法 您的代码中有3个问题:

1-您尚未在二进制文件中打开输出文件.

2-你的代码返回“1”,通常你应该返回“0”,如果出现问题然后返回错误代码.

3-你应该使用“ *** 纵器”并使c不要避免空格,所以为了从文件中读取而不是:

mySource >> buffer;

你应该使用:

mySource >> std:noskipws >> buffer;
总结

以上是内存溢出为你收集整理的用fstream读取和写入c中的二进制文件全部内容,希望文章能够帮你解决用fstream读取和写入c中的二进制文件所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/langs/1218053.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-06-05
下一篇2022-06-05

发表评论

登录后才能评论

评论列表(0条)

    保存