【发布时间】:2013-12-11 22:52:24
【问题描述】:
我正在尝试打开一个文件并将其放入一个字符串中。我的代码是:
#include <iostream>
#include <fstream>
#include <string>
using namespace std;
int main () {
streampos size;
char * memblock;
ifstream file ("C:\\a\\test.snt", ios::in | ios::binary | ios::ate);
if (file.is_open()){
size = file.tellg();
memblock = new char [size];
file.seekg (0, ios::beg);
file.read (memblock, size);
file.close();
std::string someString(memblock);
if(file.bad()){cout << "Bad\n";}
if(file.fail()){cout << "Fail\n";}
delete[] memblock;
}else{ cout << "Unable to open file";}
return 0;
}
问题是它不会加载大部分仅有的一小部分,例如“ýýýý««««««««îþîþ”。
当我用记事本++打开时,我尝试的文件看起来像这样
(来源:gyazo.com)
【问题讨论】: