3 回答

TA貢獻(xiàn)1836條經(jīng)驗(yàn) 獲得超13個(gè)贊
假設(shè)附件存在,F(xiàn)ileNotFoundExecption是由路徑中不存在的部分觸發(fā)的。您可以先檢查該路徑是否存在:
Directory.Exists(@"D:\SaveTest")
然后你可以檢查你是否對(duì)該目錄有寫權(quán)限:
Try
{
return System.IO.Directory.GetAccessControl(@"D:\SaveTest")
.GetAccessRules(true, true, typeof(System.Security.Principal.NTAccount))
.Cast<System.Security.AccessControl.FileSystemAccessRule>()
.Where(rule => (System.Security.AccessControl.FileSystemRights.Write & rule.FileSystemRights) == System.Security.AccessControl.FileSystemRights.Write)
.Any(rule => rule.AccessControlType == System.Security.AccessControl.AccessControlType.Allow);
} catch(Exception)
{
return false;
}

TA貢獻(xiàn)1995條經(jīng)驗(yàn) 獲得超2個(gè)贊
您可以嘗試做的三件事:
確保該目錄存在
檢查Attachment.FileName是否具有有效的名稱和擴(kuò)展名
檢查您的寫入權(quán)限

TA貢獻(xiàn)2016條經(jīng)驗(yàn) 獲得超9個(gè)贊
System.IO.FileNotFoundExecption 意味著它找不到您正在查找的文件或您嘗試保存到的路徑。刪除@并嘗試“D:\文件夾名稱\”+附件.文件名。雖然刪除 @ 應(yīng)該仍然有效,但我認(rèn)為您需要使用加號(hào)運(yùn)算符。將幫助您發(fā)布整個(gè)代碼塊,以便我們可以從上到下了解發(fā)生了什么。
- 3 回答
- 0 關(guān)注
- 160 瀏覽
添加回答
舉報(bào)