使用 ASP.NET 和 Visual Basic .NET 将二进制文件写入浏览器

本文介绍如何使用 ASP.NET 和 Visual Basic .NET 将二进制文件写入浏览器。

原始产品版本: ASP.NET
原始 KB 数: 307603

总结

本分步文章将创建一个示例页,该页面演示如何从文件中检索二进制数据,以及如何使用 ASP.NET 和 Visual Basic .NET 将数据写出浏览器。 尽管此演示使用 Adobe Acrobat (.pdf) 文件(Web 应用程序开发人员常用的文件),但可以将此过程应用于其他二进制文件格式。

有关本文的 Microsoft Visual C# .NET 版本,请参阅 如何使用 ASP.NET 和 Visual C# .NET 将二进制文件写入浏览器。

要求

  • .NET Framework
  • Windows 2000 或 Windows XP
  • Internet 信息服务器 (IIS)

使用 Visual Basic .NET 创建 ASP.NET Web 应用程序

本部分演示如何创建名为 BinaryDemo 的新 ASP.NET Web 应用程序:

  1. 打开 Visual Studio .NET
  2. 在“文件”菜单中,指向“新建”,然后单击“项目”
  3. 在“项目类型”下,单击“Visual Basic 项目”。 在“模板”下,单击 ASP.NET Web 应用程序
  4. “名称” 文本框中,键入 BinaryDemo。 在 “位置” 文本框中,键入服务器名称。 如果使用本地服务器,请将位置保留为 http://localhost

将 pdf 文件添加到项目

若要设置项目,以便可以在“创建 ASPX 页面”部分中添加并运行代码,必须首先将 Adobe Acrobat (.pdf) 文件添加到当前项目。 若要在 Visual Studio .NET执行此操作,请执行以下步骤:

  1. 解决方案资源管理器中,右键单击项目节点,单击“添加,然后单击“添加现有项”。
  2. 浏览到系统上.pdf文件的位置。
  3. 单击以突出显示文件,然后单击“ 打开”。
  4. Visual Studio .NET 解决方案资源管理器中,右键单击该文件,然后单击“重命名”。 重命名.pdf文件,使其与以下代码中使用的文件名 Acrobat.pdf 匹配。

此外,请确保 Adobe Acrobat Reader 安装在查看.aspx页面的客户端计算机上,以便浏览器能够正确读取和呈现二进制数据。 可以从 Adobe 网站下载 Adobe Acrobat Reader

创建 aspx 页

  1. 将名为 BinaryData.aspx 的新.aspx页添加到当前项目,如下所示:

    1. 解决方案资源管理器中,右键单击项目节点,单击“添加,然后单击“添加 Web 窗体”。
    2. 将页面 命名为BinaryData.aspx,然后单击“ 打开”。

    注意

    请确保将页面添加到与在上一部分中添加的.pdf文件位于同一级别的项目。 这非常重要,因为代码使用相对路径最初引用.pdf文件。

  2. 在编辑器中,右键单击 BinaryData.aspx,然后单击“ 查看代码”。

  3. 突出显示以下代码,右键单击代码,然后单击“ 复制”。 在Page_Load代码隐藏页的事件中,单击“编辑”菜单上的“粘贴以粘贴代码:

    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
                'Set the appropriate ContentType.
                Response.ContentType = "Application/pdf"
                'Get the physical path to the file.
                Dim FilePath As String = MapPath("acrobat.pdf")
                'Write the file directly to the HTTP output stream.
                Response.WriteFile(FilePath)
                Response.End()
    End Sub
    
  4. 在“文件” 菜单上,单击“全部保存” 。

  5. 在“生成”菜单上,单击“生成”

  6. 若要运行代码,请在解决方案资源管理器中右键单击BinaryData.aspx,然后单击“在浏览器中查看”。 如果系统提示,请单击“打开以打开并在浏览器中呈现文件。

注意

如果要使用上述代码来支持其他二进制文件类型,则必须修改字符串中的 ContentType 值,以便指定适当的文件格式。 此字符串的语法通常格式化为 类型/子类型,其中 类型 是常规内容类别, 子类型 是特定的内容类型。 有关受支持的内容类型的完整列表,请参阅 Web 浏览器文档或当前的 HTTP 规范。 以下列表概述了一些常见 ContentType 值:

  • “text/HTML”
  • “image/GIF”
  • “image/JPEG”
  • “text/plain”
  • “Application/msword”(对于 Word 文件)
  • “Application/x-msexcel”(对于 Excel 文件)

参考

第三方信息免责声明

本文中提到的第三方产品由 Microsoft 以外的其他公司提供。 Microsoft 不对这些产品的性能或可靠性提供任何明示或暗示性担保。