簡體   English   中英

itextsharp-將文件保存到遠程服務器

[英]itextsharp - saving file to remote server

如何將.pdf文件保存到遠程服務器? 下面的代碼部分要更改什么?

if (File.Exists(@"C:\\Users\\xxx\\xxx.pdf"))
{
    MessageBox.Show("xx.", "xx");
}
else
{
    Directory.CreateDirectory(@"C:\\Users\\xx);
    PdfWriter.GetInstance(pdfDosya, new FileStream(@"C:\\Users\\xx\\xx.pdf", FileMode.Create));
}

確認您可以查看要保存到的位置。 然后更新您的代碼

String serverLocation = @"\\servername\";

if (File.Exists(serverLocation +@"Users\xxx\xxx.pdf"))
{
    MessageBox.Show("xx.", "xx");
}
else
{
    Directory.CreateDirectory(serverLocation +@"Users\xx);
    PdfWriter.GetInstance(pdfDosya, new FileStream(serverLocation +@"Users\xx\xx.pdf", FileMode.Create));
}

如評論中所述,當您使用@時,不需要轉義\\。

可能唯一的區別是您在保存任何文件之前向服務器進行身份驗證。

最簡單的方法是使用“用戶模擬”。

將其安裝在您的應用程序中

https://www.nuget.org/packages/UserImpersonation/

安裝包UserImpersonation-版本1.0.0

一個帶有“用戶模擬DLL”的快速示例

using (UserImpersonation obj = new UserImpersonation("YourUserNameToAccessTheServer", "YourDomain", "UserPassword"))
{
   string YourDirectoryFullNameExample = "\\ServerName\\Folder1\\Folder2\\File.Pdf"
   if (File.Exists(YourDirectoryFullNameExample))
   {
      MessageBox.Show("xx.", "xx");
   }
   else
   {
      Directory.CreateDirectory(@"YourDirectoryFullNameExample);
      PdfWriter.GetInstance(pdfDosya, new FileStream(YourDirectoryFullNameExample, FileMode.Create));
   }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM