[英]Specify the location to save the pdf file asp.net
下面是我生成示例PDF文件的代碼。 但是server.mappath方法將文件保存在項目文件夾中。 如何將PDF文件保存在自己的桌面上?
protected void btnPDF_Click(object sender, EventArgs e)
{
var document = new Document(PageSize.A4, 50, 50, 25, 25);
var filename = DDLCase.SelectedItem.Text + ".pdf";
var output = new FileStream(Server.MapPath(filename), FileMode.Create);
var writer = PdfWriter.GetInstance(document, output);
document.Open();
var welcomeParagraph = new Paragraph("Test1");
document.Add(welcomeParagraph);
document.Close();
btnPDF.Enabled= false;
}
目前還不清楚你的問題是什么,因為用其他位置替換Server.MapPath(filename)
應該非常簡單。
一個有用的功能是Path.Combine,因此您可以正確地構建文件的路徑:
var output = new FileStream(Path.Combine("c:\\myPDF\\", filename), FileMode.Create);
請注意,要在計划存儲文件的服務器上正確完成文件夾,必須具有足夠的權限,以允許ASP.Net進程在那里保存文件。 如果您使用Windows身份驗證進行模擬,則會變得比較棘手,因為在請求期間運行的帳戶代碼將是傳入用戶的帳戶。
嘗試這個
public string CommonFileSave(HttpPostedFileBase postedFile, string filePath)
{
string resultResponse = "sccuess";
if (!Directory.Exists(filePath))
{
Directory.CreateDirectory(filePath);
postedFile.SaveAs(filePath + postedFile.FileName);
}
else
{
filePath = filePath + postedFile.FileName;
if (!System.IO.File.Exists(filePath))
{
postedFile.SaveAs(filePath);
}
}
return resultResponse;
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.