0

我正在使用 C# 读取 PDF 文件,但字符来自另一种编码,并且返回的字符与我在 PDF 查看器中查看文件时预期的字符不同。

我认为 UTF-8 编码是正确的。

我究竟做错了什么?

string file = @"c:\document.pdf";
Stream stream = File.Open(file, FileMode.Open);
BinaryReader binaryReady = new BinaryReader(stream);
byte[] buffer = binaryReady.ReadBytes(Convert.ToInt32(stream.Length));
var encoder = UTF8Encoding.UTF8.GetString(buffer);
4

1 回答 1

4

PDF 是一个非常复杂的多部分文件,它不仅仅是 UTF8 文本。

如果您想阅读 PDF 文件,您必须通读完整的PDF 文件格式文档,并完全实现文件格式如何工作的大而复杂的细节。

于 2013-06-24T02:14:46.680 回答