将图片写入二进制文件,再从二进制文件还原图片(c++)
#include "string"
#include "iostream"
#include "fstream"
using namespace std;
#define MAX 20480
void main()
{
string sPicPath = "E:\\10kb.jpg";
string sSavePath = "E:\\Binary.bat";
string sGetPic = "E:\\newpicture.png";
ifstream fin(sPicPath.c_str(), ios::binary);
if(!fin)
{
cout<<"can't open "<<sPicPath<<endl;
return;
}
fin.seekg(,ios::end);//reset FilePtr Position as the end
int ByteLen = fin.tellg();//get file length(bytes)
cout<<"the file length : "<<ByteLen<<" Bytes"<<endl;
fin.seekg(,ios::beg);//restore saved pos
char pBuffer[MAX] = {};
fin.read(pBuffer, sizeof(pBuffer));
fin.close();
ofstream fout(sSavePath.c_str(), ios::binary);
if(!fout)
return;
fout.write(pBuffer,sizeof(pBuffer));
fout.close();
ifstream fins(sSavePath.c_str(), ios::binary);
if(!fins)
{
cout<<"can't open "<<sSavePath<<endl;
return;
}
memset(pBuffer,,sizeof(pBuffer));
fins.read(pBuffer, sizeof(pBuffer));
fins.close();
ofstream fouts(sGetPic.c_str(), ios::binary);
if(!fouts)
return;
fouts.write(pBuffer, sizeof(pBuffer));
cout<<"new file path: "<<sGetPic<<endl;
fouts.close();
}
若您觉得对您有帮助,不妨点个赞
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ... 原地址:http://blog.csdn.net/linuxchen/article/details/16865645 Python 脚本:(来自网络) unpack_plist.py 命令行: py ... 在做移动端图片上传的时候,用户传的都是手机本地图片,而本地图片一般都相对比较大,拿iphone6来说,平时拍很多图片都是一两M的,如果直接这样上传,那图片就太大了,如果用户用的是移动流量,完全把图片上 ... 图片存在本地.再从本地获取图片 //将图片保存到本地 + (void)SaveImageToLocal:(UIImage*)image Keys:(NSString*)key { NSUser ... 1. cv2.dnn.readNetFromCaffe(prototxt, model) 用于进行SSD网络的caffe框架的加载 参数说明:prototxt表示caffe网络的结构文本,model ... 前言:最近公司的项目在做全网营销,要做非微信浏览器的wap 站 的改版,其中涉及到的一点技术就是采用H5 选择手机相册中的图片,或者拍照,再将获取的图片进行压缩之后上传. 这个功能模块主要有这5点比较 ... 前几天看到了有人在android5.0上实现了如下图一样的效果,我自己就去搜了下.参考了国外一篇文章和国内的一篇文章,最终实现了想要的效果.具体参考的网址我已经贴到文章末尾,大家可以去英文的那个网站看 ... 前几天看到了有人在android5.0上实现了如下图一样的效果,我自己就去搜了下.参考了国外一篇文章和国内的一篇文章,最终实现了想要的效果.具体参考的网址我已经贴到文章末尾,大家可以去英文的那个网站看 ... 参考: https://blog.csdn.net/ynyn2013/article/details/49120731 https://www.jianshu.com/p/f57cc64b9f5e 一 ... 前言:此节的开展是在上一节的基础上进行的,(每一节都是从无到有编写关于此节的知识),最后会附上相关完整代码.上一节 CSS中的图片处理 1.新建images文件夹 在src目录下新建一个images文 ... [简述] Copy-On-Write简称COW,是一种程序设计中的优化策略. JDK里的COW容器分为两种:CopyOnWriteArrayList 和 CopyOnWriteArraySet. Co ... PS D:\deployScript> $user=(Get-SPUser -IDENTITY "i:0e.t|xmssts|zhangshan" -Web http://t ... 通过专门检索和其他课本的比较,得到了如下结论.统计学在分析数据时,需要对数据进行最基础的描述性分析.在众多描述分析的指标中,平均数指标能够反映分布数列集中趋势.但是平均数指标包括两类:一类是数值平均数 ... 引言 使用微信时我们会发现,首次进入微信的好友列表时,会加载好友头像,但是再次进入时,就不用重新加载了,而且其他页面都不用重新加载,说明微信的好友头像是缓存在本地的,然后好友修改头像后,又会及时的更新 ... 在Andriod开发中,文件存储和Java的文件存储类似.但需要注意的是,为了防止产生碎片垃圾,在创建文件时,要尽量使用系统给出的函数进行创建,这样当APP被卸载后,系统可以将这些文件统一删除掉.获取 ... 更换RN项目目录位置后,react-native run-ios,出错. node_modules/react-native/ReactCommon/yoga/yoga/YGNodeList.c 解决 ... 故障现象:UNDO表空间越来越大,长此下去最终数据因为磁盘空间不足而崩溃: 问题分析:本问题在ORACLE系统管理中属于比较正常的一现象,产生问题的原因主要以下两点: 1. 有较大的事务量让Oracl ... ARC以及MRC中setter方法的差异 有时候,你会需要重写setter或者getter方法,你知道么,ARC与MRC的setter方法是有着差异的呢. 先看下MRC下的setter方法: 在看下A ... sed命令 将文本input.txt中含有”姓名”字符串的行中的谢朝辉替换成扎巴依 sed -e '/姓名/s/谢朝辉/扎巴依/g' input.txt 将input.txt中第n(5)行替换成”ji ... Redis的事务功能详解 http://ghoulich.xninja.org/2016/10/12/how-to-use-transaction-in-redis/ MULTI.EXEC.DISCA ...将图片写入二进制文件,再从二进制文件还原图片(c++)的更多相关文章
随机推荐