我有一个程序,我需要读取二进制文本。我读通过重定向二进制文本:将二进制文本读入数组?
READDATA将是我的Makefile文件制作一个可执行文件。
例子:READDATA < binaryText.txt
我想要做的是阅读的二进制文本,二进制文本文件中的每个字符存储为一个字符数组内的字符。二进制文本是由32个这是我这样做的尝试...
unsigned char * buffer;
char d;
cin.seekg(0, ios::end);
int length = cin.tellg();
cin.seekg(0, ios::beg);
buffer = new unsigned char [length];
while(cin.get(d))
{
cin.read((char*)&buffer, length);
cout << buffer[(int)d] << endl;
}
但是,我不断收到此分段错误。可能任何人有关于如何将二进制文本读入char数组的任何想法?谢谢!
“二进制文字”? –
我说二进制文本,因为我不能完全从二进制文件中读取..但简单地将二进制文件作为输入中的文本到我的程序 – user200081
按照惯例“二进制”和“文本”通常被用作互斥描述文件内容。不是因为你不能写一个二进制块到“文本”文件或纯文本字符串为“二进制”文件,但由于混合模式是很少有用。所以,当你说*“二进制文本文件”*或*“二进制文件内的文本”*,我们正在抓我们的头。注意:所有文件都以二进制格式存储,但在“文本”文件中,所有内容都将被视为文本。 – dmckee