博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
std::ofstream由二进制流写文件的问题
阅读量:6001 次
发布时间:2019-06-20

本文共 710 字,大约阅读时间需要 2 分钟。

从MPQ包中读取二进制流出来然后文件写到硬盘。

DWORD size = SFileGetSize(hFile);

char* buffer = new char[size];

std::ofstream ofs;

ofs.open(name);

ASSERT(ofs.good());

ofs.write(buffer, size);

ASSERT(ofs.good());

ofs.close();

.xml,.lua,等文本都是对的,唯独.jpg这些图片些不对!

open改为ofs.open(name, std::ios::out | std::ios::binary);

就对了!

原因应该是ofstream打开文件时默认是文本格式吧。。。

void open(    const char *_Filename,    ios_base::openmode _Mode = ios_base::out,    int _Prot = (int)ios_base::_Openprot);void open(    const char *_Filename,    ios_base::openmode _Mode);void open(    const wchar_t *_Filename,    ios_base::openmode _Mode = ios_base::out,    int _Prot = (int)ios_base::_Openprot);void open(    const wchar_t *_Filename,    ios_base::openmode _Mode);

转载地址:http://kzdmx.baihongyu.com/

你可能感兴趣的文章
使用ExternalDNS自动化DNS配置
查看>>
BigDecimal去除多余的0和财务千分位显示工具类UnitChange
查看>>
SpringBoot整合Jsp和Thymeleaf (附工程)
查看>>
Nginx负载均衡
查看>>
知物由学 | 未来50年网络安全行业发展愿景
查看>>
2018-5-15
查看>>
了解多线程!
查看>>
关于Centos7挂载Win10共享文件失败问题的解决
查看>>
阿里资深专家面试问题收集
查看>>
fragment基础
查看>>
redis_cluster创建集群时报错
查看>>
开发部署准备
查看>>
2019数据中心预测
查看>>
Linux之父:Facebook、Twitter和Instagram已成为一种疾病
查看>>
UITextFiled 总结
查看>>
PDF怎么修改文字
查看>>
iOS沙盒以及基于文件的持久化
查看>>
男子沙漠迷失方向 民警用无人机引路
查看>>
2015年最新苹果开发者账号注册流程详解
查看>>
借人工智能加速,让出海营销更精准
查看>>