我用下面的代碼生成PDF,它是完美的工作,以節省服務器映射路徑上的PDF:如何使用iTextSharp的
string strQuery = "select * from userdata";
SqlCommand cmd = new SqlCommand(strQuery);
DataTable dt = GetData(cmd);
//Create a dummy GridView
GridView GridView1 = new GridView();
GridView1.AllowPaging = false;
GridView1.DataSource = dt;
GridView1.DataBind();
Response.ContentType = "application/pdf";
Response.AddHeader("content-disposition", "attachment;filename=GridViewExport.pdf");
Response.Cache.SetCacheability(HttpCacheability.NoCache);
StringWriter sw = new StringWriter();
HtmlTextWriter hw = new HtmlTextWriter(sw);
GridView1.RenderControl(hw);
StringReader sr = new StringReader(sw.ToString());
Document pdfDoc = new Document(PageSize.A4, 10f, 10f, 10f, 0f);
HTMLWorker htmlparser = new HTMLWorker(pdfDoc);
PdfWriter.GetInstance(pdfDoc, Response.OutputStream);
pdfDoc.Open();
htmlparser.Parse(sr);
pdfDoc.Close();
Response.Write(pdfDoc);
Response.End();
它的作品好。但我可以將此pdf保存到服務器映射路徑中。
我在pdfDoc.Close()後面寫了下面的代碼:
String path = Server.MapPath("~/mypdf.pdf");
但它沒有將pdf保存到服務器映射路徑。
我該怎麼做?
[將生成的pdf直接保存到服務器目錄文件夾而無需用戶提示]可能的重複(http://stackoverflow.com/questions/4253989/save-the-generated-pdf-directly-to-the-server-目錄 - 文件夾 - 沒有用戶 - 舞會) –