gpt4 book ai didi

C# Path.GetTempPath 返回 "Could not find a part of the path"错误

转载 作者:行者123 更新时间:2023-11-30 20:13:40 27 4
gpt4 key购买 nike

我正在从 ftp 服务器下载文件并将其保存到 Path.GetTempPath() 中定义的目录;但是,我收到以下错误:找不到路径的一部分。

我已经确认返回的路径是正确的:C:\Users\[用户名]\AppData\Local\Temp。

SYSTEM、Administrators 和 [username] 都可以完全控制该目录。我认为 temp 目录的意义在于它对任何人/所有人都可以保存,但为了以防万一,我也授予了 NETWORK SERVICE 修改权限。 (我假设这是 ASP.NET 开发服务器使用的用户名,但我不确定。)

我在 Vista 上使用 VS 08。

这是我的代码:

FtpWebRequest downloadRequest = (FtpWebRequest)WebRequest.Create(
ConfigurationManager.AppSettings["FTPServer"] + "//" + fileName);

downloadRequest.Credentials = new NetworkCredential(
ConfigurationManager.AppSettings["FTPUsername"],
ConfigurationManager.AppSettings["FTPPassword"]);

downloadRequest.Method = WebRequestMethods.Ftp.DownloadFile;

FtpWebResponse downloadResponse =
(FtpWebResponse)downloadRequest.GetResponse();

try
{
Stream downloadStream = downloadResponse.GetResponseStream();

if (downloadStream != null)
{
logger.Info("File Download status: {0}",
downloadResponse.StatusDescription);

StreamReader downloadReader = new StreamReader(downloadStream);

try
{
if (downloadReader != null)
{

StreamWriter downloadWriter =
new StreamWriter(Path.GetTempPath());
downloadWriter.AutoFlush = true;
downloadWriter.Write(downloadReader.ReadToEnd());
}
}
finally
{
if (downloadReader != null)
{
downloadReader.Close();
}
}
}
}
finally
{
if (downloadResponse != null)
{
downloadResponse.Close();
}
}

我真的很感激任何关于我在这里做错的想法。

谢谢!

最佳答案

在我看来,您需要将文件名添加到临时路径的末尾。试试这个:

StreamWriter downloadWriter =
new StreamWriter(Path.Combine(Path.GetTempPath(), fileName));

关于C# Path.GetTempPath 返回 "Could not find a part of the path"错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1412296/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com