我想存储来自API的文件,我已经尝试了以下代码,但它给出了错误。
string StrFileName = result.LabelDownload.Href;
string FilePath = ConfigurationManager.AppSettings["FilePath"].ToString();
string dir = string.Format("{0}{1:yyyy-MM}\", FilePath, DateTime.Now);
// Save the uploaded file.
if (!Directory.Exists(dir))
Directory.CreateDirectory(dir);
WebClient wc = new WebClient();
wc.DownloadFile(StrFileName, dir);
错误:Web 客户端请求期间发生异常。 内部异常:文件名、目录名或卷标语法不正确。
如何从 Web 下载文件并将其存储在我的本地文件夹中? 我需要将该路径保存在数据库中
WebClient.DownloadFile
方法需要下载文件的文件名,而不仅仅是目录。因此,要么只传递文件名,它会将文件保存到 apps 目录,要么提供完全限定的路径。
string sourceFileName =
result.LabelDownload.Href;
string filePath = ConfigurationManager.AppSettings["FilePath"].ToString();
string dir = string.Format("{0}{1:yyyy-MM}", filePath, DateTime.Now);
// Save the uploaded file.
if (!Directory.Exists(dir))
Directory.CreateDirectory(dir);
WebClient wc = new WebClient();
wc.DownloadFile(sourceFileName, Path.Combine(dir, sourceFileName));
源文件也是如此。这是文档。
另请查看 C# 命名约定,因为局部变量通常是小写的。
我解决了,
WebClient wc = new WebClient();
wc.DownloadFile(StrFileName, dir + filenameWithoutPath);
在我没有添加文件名之前,所以我们需要添加文件名,在我的情况下它是文件名没有路径,它现在正在工作。