3

将文件从服务器复制到本地计算机时出现“找不到路径的一部分”错误。这是我的代码示例:

 try
            {
                string serverfile = @"E:\installer.msi";
                string localFile = Path.GetTempPath();
                FileInfo fileInfo = new FileInfo(serverfile);
                fileInfo.CopyTo(localFile);
                return true;
            }
            catch (Exception ex)
            {
                return false;

            }

谁能告诉我我的代码有什么问题。

4

2 回答 2

6
Path.GetTempPath

正在返回您的文件夹路径。您还需要指定文件路径。你可以这样做

string tempPath = Path.GetTempPath();
string serverfile = @"E:\installer.msi";
string path = Path.Combine(tempPath, Path.GetFileName(serverfile));
File.Copy(serverfile, path); //you can use the overload to specify do you want to overwrite or not
于 2013-09-02T05:30:27.450 回答
4

您应该将文件复制到文件,而不是文件到目录:

...
  string serverfile = @"E:\installer.msi";
  string localFile = Path.GetTempPath();
  FileInfo fileInfo = new FileInfo(serverfile);

  // Copy to localFile (which is TempPath) + installer.msi
  fileInfo.CopyTo(Path.Combine(localFile, Path.GetFileName(serverfile)));
...
于 2013-09-02T05:34:33.770 回答