首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >更改Response.ContentType = "application/ pdf“中pdf扩展的aspx扩展

更改Response.ContentType = "application/ pdf“中pdf扩展的aspx扩展
EN

Stack Overflow用户
提问于 2013-06-24 14:34:22
回答 2查看 4.9K关注 0票数 0

我有一个将pdf文件写入aspx页面的代码,但问题是当我想保存这个文件时,它会用aspx扩展名保存.例如:

它保存为myPDFfile.aspx,而我想将它保存为myPDFfile.pdf

我必须将扩展更改为.pdf才能打开它。

如何以编程方式更改扩展?

我的代码:

代码语言:javascript
运行
复制
Dim pdfPath As String = path + Session("factura").ToString.Trim + ".pdf"
Dim client As New WebClient()
Dim buffer As [Byte]() = client.DownloadData(pdfPath)
Response.ContentType = "application/pdf"
Response.AddHeader("content-length", buffer.Length.ToString())
Response.BinaryWrite(buffer)
EN

回答 2

Stack Overflow用户

发布于 2013-06-24 14:36:32

您应该添加Content-Disposition头:

代码语言:javascript
运行
复制
Dim pdfPath As String = path + Session("factura").ToString.Trim + ".pdf"
Dim client As New WebClient()
Dim buffer As [Byte]() = client.DownloadData(pdfPath)
Response.ContentType = "application/pdf"
Response.AddHeader("content-length", buffer.Length.ToString())

Response.AddHeader("content-disposition", "attachment; filename=myPDFfile.pdf")

Response.BinaryWrite(buffer)

您还应该阅读这个问题及其答案,因为它会导致文件名字符的潜在问题。

票数 1
EN

Stack Overflow用户

发布于 2013-06-24 14:37:34

您需要添加一个带有文件名的content-disposition头。

代码语言:javascript
运行
复制
 Response.AddHeader("content-disposition", "attachment; filename=myPDFfile.pdf");

这是RFC 2616第19节的一部分。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17278085

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档