C++读取图片

C++读取图片

以C++风格(文件流)而不是C风格(FILE)读取图片。
补充:也可以使用opencv的cv::imread()函数读取图片,这个函数返回的是cv:Mat类型,在计算机视觉(CV)领域用的比较多。

头文件

使用到的头文件主要是fstream

参考链接

http://www.cplusplus.com/reference/istream/istream/read/
http://www.cplusplus.com/reference/string/string/string/
http://www.cplusplus.com/reference/fstream/ifstream/

主要用到的函数

  1. ifstream.seekg()
  2. ifstream.tellg()
  3. ifstream.read()

主要步骤

  • 打开图片文件
  • 计算图片长度
  • 创建内存缓存区
  • 读取图片

代码

#include <fstream> // ifstream, ifstream::in
using namespace std;

int main(){
	// 1. 打开图片文件
	ifstream is("test.jpg", ifstream::in);
	// 2. 计算图片长度
	is.seekg(0, is.end);
	int length = is.tellg();
	is.seekg(0, is.beg);
	// 3. 创建内存缓存区
	char * buffer = new char[length];
	// 4. 读取图片
	is.read(buffer, length);
	// 到此,图片已经成功的被读取到内存(buffer)中
	delete [] buffer;
	return 0;
}
  • 2
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值