3

我在数据库中有一个字节数组,我需要以 pdf 文件格式显示它。这是我这样做的方式。但是,这不适用于 Android 平板电脑(在 2.3.5 和 3.2 中检查)。

Response.Clear();
Response.ContentType = "application/octet-stream";
Response.BufferOutput = true;
Response.Buffer = false;
Response.AddHeader("Content-Length", binaryData.Length.ToString());
Response.AppendHeader("Content-Disposition", "inline;filename=ClientDocument.PDF");
// Response.BinaryWrite(binaryData);
Response.OutputStream.Write(binaryData, 0, binaryData.Length);
Response.End();

你们能想出什么方法可以让它在所有浏览器上运行吗?

感谢帮助

谢谢

4

2 回答 2

2

几件事...

  1. 更改内容类型以更正 PDF 文件的 MIME 类型。有大量这些在使用 application/pdf、application/x-pdf、application/acrobat、applications/vnd.pdf、text/pdf、text/x-pdf",我们只使用 application/pdf。

    Response.ContentType = "应用程序/pdf";

  2. 然后,如果您希望浏览器打开并显示 PDF 文件,请删除 Content-Disposition 标题。

  3. ...或...如果您希望浏览器下载 PDF 文件,请将 Content-Disposition 类型更改为“附件”而不是“内联”。

    Response.AppendHeader("Content-Disposition", "attachment;filename=ClientDocument.PDF");

于 2012-05-01T19:13:16.693 回答
0

您是否已在测试平板电脑/手机上升级到最新版本的 Android?

当我遇到类似问题(仅在 Android 上从流或字节 [] 发送到浏览器时,PDF 无法打开或下载)时,这为我解决了这个问题。

于 2012-10-02T11:23:17.570 回答