加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

C++实现单张图片读取和保存

发布时间:2020-12-15 04:54:19 所属栏目:百科 来源:网络整理
导读:使用C++实现对单张图片的读取和保存,C语言可以参考,比较简单。 #include using namespace std; void main(void) { //保存输入图像文件名和输出图像文件名 char InImgName[10]; char OutImgName[10]; //图像数据长度 int length; //文件指针 FILE* fp; //输

使用C++实现对单张图片的读取和保存,C语言可以参考,比较简单。

#include

using namespace std;

void main(void)

{

//保存输入图像文件名和输出图像文件名

char InImgName[10];

char OutImgName[10];

//图像数据长度

int length;

//文件指针

FILE* fp;

//输入要读取的图像名

cout<<"Enter Image name:";

cin>>InImgName;

//以二进制方式打开图像

if ( (fp=fopen(InImgName,"rb" ))==NULL )

{

cout<<"Open image failed!"<

exit(0);

}

//获取图像数据总长度

fseek(fp,SEEK_END);

length=ftell(fp);

rewind(fp);

//根据图像数据长度分配内存buffer

char* ImgBuffer=(char*)malloc( length* sizeof(char) );

//将图像数据读入buffer

fread(ImgBuffer,length,1,fp);

fclose(fp);

//输入要保存的文件名

cout<<"Enter the name you wanna to save:";

cin>>OutImgName;

//以二进制写入方式

if ( (fp=fopen(OutImgName,"wb"))==NULL)

{

cout<<"Open File failed!"<

exit(0);

}

//从buffer中写数据到fp指向的文件中

fwrite(ImgBuffer,fp);

cout<<"Done!"<

//关闭文件指针,释放buffer内存

fclose(fp);

free(ImgBuffer);

}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持编程之家。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读