【发布时间】:2014-06-16 13:20:31
【问题描述】:
我使用流动代码创建了一个 pdf 文件。当我运行我的代码时,生成的 pdf 文件存储在下载文件夹中。我想改变这条路。我想将它保存到我的解决方案中。我该怎么做?
这是代码:
Document pdfDoc = new Document(new Rectangle(624f, 568f),0f,0f,0f,0f);
try
{
PdfWriter.GetInstance(pdfDoc, System.Web.HttpContext.Current.Response.OutputStream);
pdfDoc.Open();
string imageFilePath = System.Web.HttpContext.Current.Server.MapPath("../images/1.jpg");
iTextSharp.text.Image jpg = iTextSharp.text.Image.GetInstance(imageFilePath);
jpg.ScaleToFit(624f, 468f);
pdfDoc.Add(jpg);
pdfDoc.Close();
Response.ContentType = "application/pdf";
Response.AddHeader("content-disposition", "attachment; filename= " + System.DateTime.Now.ToString("yyyyMMdd_HHmmssff") + ".pdf");
Response.End();
}
catch (DocumentException de)
{
System.Web.HttpContext.Current.Response.Write(de.Message);
}
【问题讨论】:
-
当您在服务器上生成文件并通过 HTTP 提供它时,您无法控制最终用户将其保存在何处。对不起。
-
你在哪里写内容?你错过了一些代码..
-
@AnimeshGhosh:服务器端代码不知道客户端的文件系统。 (有很多很好的理由。)客户端决定文件的保存位置(甚至如果)。
-
lamkrillin 他仍然可以将文件保存到他的本地机器他还可以为 .pdf 文件生成唯一的文件名,但他也缺少一些响应代码
-
@iamkrillin:: 我想在服务器中保存一个指定文件夹,这个 pdf 将保存在该文件夹中。用户无法更改此路径。那么我该怎么做呢?
标签: c# asp.net pdf pdf-conversion