我正在使用以下代码读取 PDF 文件的内容:
string document;
FILE * f;
f = fopen ( path , "rb");
unsigned char buffer[1024];
while(!feof(f)){
int bytes = fread(buffer,1,1024,f);
for(int i = 0; i < bytes; i++){
document += buffer[i];
cout << buffer[i];
}
}
fclose ( f );
问题是,字符与我在文本编辑器中打开文件时的字符不同。 例如这个文件 files.flashfan.ch/file.png
此输出结果: files.flashfan.ch/output.png
如何读取文件,使字符与编辑器中的字符完全相同? 我想解析 PDF 文件,但没有原始字符我无法做到这一点。 我已经用这个文件测试了代码(它不是 PDF 文件,只是其中的一部分,所以你不能显示它):
感谢您的帮助!
最佳答案
我没有看到您读取文件的方式有任何错误(当我将输出重定向到文件时,代码实际上可以在我的 Linux 机器上运行)。问题可能出在与控制台混淆的控制字符中。尝试输出到文件并与输入进行比较。
关于C++读取PDF文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4448865/