微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

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

使用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);

}

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

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐