C++读写图片文件
2024-09-05 19:42:50
1、C方式
string sourcefilename = "D:\\Logo.jpg";
string destfilename="D:\\Logo1.jpg"; FILE* fp;
if ( (fp=fopen(sourcefilename.c_str(), "rb" ))==NULL )
{
return;
} fseek(fp, 0, SEEK_END);
int length=ftell(fp);
rewind(fp);
char* ImgBuffer=(char*)malloc( length* sizeof(char) ); fread(ImgBuffer, length, 1, fp);
fclose(fp);
if ( (fp=fopen(destfilename.c_str(), "wb"))==NULL)
{
return;
}
fwrite(ImgBuffer,sizeof(char) *iSize, 1, fp);
fclose(fp);
free(ImgBuffer);
2、STL方式
#include<fstream>
#include <iostream> string sourcefilename = "D:\\Logo.jpg";
string destfilename="D:\\Logo1.jpg"; std::ifstream fin(sourcefilename.c_str(), std::ios::binary);
fin.seekg(0, ios::end);
int iSize = fin.tellg();
char* ImgBuffer = new char[ sizeof(char) *iSize];
fin.seekg(0, ios::beg);
fin.read(ImgBuffer, sizeof(char) * iSize);
fin.close(); std::ofstream outFile(destfilename.c_str(), ios::out | ios::binary);
outFile.write(ImgBuffer,sizeof(char) * iSize);
outFile.close();
最新文章
- ListView.setAdapter(adapter);空指针异常的解决的总结
- RCP:美化基于eclipse3.7.2的RCP界面
- BZOJ4612——[Wf2016]Forever Young
- IOS 瀑布流
- sql 索引创建
- 【学习】ABAP OLE 对EXCEL的处理
- (四) PHPCMSV9如何更换模板风格
- Gitlab使用Webhook实现Push代码自动部署
- (void) (&;_min1 == &;_min2);【转】
- JVM GC机制
- 在Java中使用Socket模拟客户端和服务端(多线程)
- Flex读取txt文件里的内容(一)
- Vue数组更新及过滤排序
- git常用命令以及如何与fork别人的仓库保持同步
- 简单的Python 火车抢票程序
- Spring.NET学习笔记8——集合类型的注入(基础篇)
- 【bzoj2154】 Crash的数字表格
- Web 前端攻防(2014版)-baidu ux前端研发部
- centos 下wps 与goland 不能输入中文的解决办法
- 回形矩阵--python
热门文章
- 【LeetCode】872. Leaf-Similar Trees 解题报告(Python)
- 【LeetCode】151. Reverse Words in a String 翻转字符串里的单词(Python)
- King&#39;s Order(hdu5642)
- Revolving Digits(hdu4333)
- 【Java】质数判断
- Ubuntu mininet+Ryu环境安装
- 源码分析 SpringCloud 2020.0.4 版本 EurekaClient 的注册过程
- 【MySQL作业】avg 和 count 函数——美和易思聚合函数应用习题
- 编写Java程序,使用JFrame创建一个窗体
- frontend-maven-plugin插件问题解决