首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > C++ >

将文本数据以二进制保存,该怎么解决

2012-05-11 
将文本数据以二进制保存小弟编了个运算程序,因数据以xml保存的话文件较大,现想以二进制保存,请问应如何实

将文本数据以二进制保存
小弟编了个运算程序,因数据以xml保存的话文件较大,现想以二进制保存,请问应如何实现?
此外,请问二进制文件保存后应如何解码?

[解决办法]

C/C++ code
#include <fstream>#include <iostream>using namespace std;int main(int argc, char* argv[]){    fstream outFile("result.bin", ios::out | ios::binary);    outFile << 2*5;    outFile.close();    fstream inFile("result.bin", ios::in | ios::binary);    int result;    inFile >> result;    cout << "the result of 2*5 is: " << result << endl;    inFile.close();    return 0;}
[解决办法]
不要把
fopen("...","...");fscanf,fprintf,fclose //读时把\r\n替换成\n,写时把\n替换成\r\n;读到\x1a就设置EOF;读写的内容当字符看待

fopen("...","...b");fread,fwrite,fclose //不作以上替换,遇到\x1a仍继续读;读写的内容当字节看待
弄混了

推荐使用WinHex软件查看文件或内存中的原始字节内容。

热点排行