我正在尝试将文件复制到另一个目录,但我收到此错误
System.IO.DirectoryNotFoundException:找不到部分内容 路径'C:\ Documents and 设置\(我的用户名)\ Desktop \ Source_Folder \ File_1.xlsx'。
但File_1.xlsx存在于我桌面上的Source_Folder文件夹中。那我为什么会收到这个错误?
这是我的代码
Dim path_orig As String = "C:\Documents and Settings\(my username)\Desktop\Source_Folder\"
Dim oldFile As String = System.IO.Path.Combine(path_orig, filename)
Dim path_new As String = Server.MapPath("~") & "\Destination_Folder\"
Dim newFile As String = System.IO.Path.Combine(path_new, filename)
File.Copy(oldFile, newFile, True)
* filename是一个变量,在本例中是“File_1.xlsx”
答案 0 :(得分:3)
不要硬编码Documents and Settings
。它会因操作系统而改变。请改用:
Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.Desktop), "Source_Folder")
此外,如果您在Web应用程序中运行此操作,则可能会遇到权限问题。更改存储文件的位置和/或更改运行应用程序池的用户和/或授予应用程序池用户对该文件夹的权限。