[英]downloading file from FTP server: the given path's format is not supported
我已编写此代码从FTP服务器下载文件,但显示错误消息,不支持给定路径的格式。
WebClient web = new WebClient();
byte[] filedata = web.DownloadData("ftp://localhost/images/"
+ "/" + "aaaasa.txt");
FileStream file = File.Create("ftp://localhost/images/"+"/"+"aaaasa.txt");
file.Write(filedata, 0, filedata.Length);
file.Close();
网址中的双斜杠看起来可疑。
例如:
"ftp://localhost/images/"+"/"+"aaaasa.txt"
给
ftp://localhost/images//aaaasa.txt
这是你的意思吗?
File.Create
也仅适用于本地文件。
除了其他人所说的关于FTP路径中的双斜杠(“ //”)之外,请注意,本地文件不能包含协议:
File.Create("ftp://localhost/images/"+"/"+"aaaasa.txt")
那不行 请提供本地文件名,如以下示例所示:
FileStream file = File.Create(@"C:\Temp\aaaasa.txt");
file.Write(filedata, 0, filedata.Length);
file.Close();
我认为,您遇到的问题是由于以下事实造成的:您给定的路径不正确,原因是您现在写的“ /”过多:
web.DownloadData("ftp://localhost/images/" + "/" + "aaaasa.txt")
结果为“ ftp://localhost/images//aaaasa.txt”
如果您要删除+“ /”,我认为您可能还可以。
对于file.create方法也是如此。
摆脱双斜杠。 而且,File类适用于本地文件系统,这似乎是您要向其中写入数据的对象。 为什么在该路径中有ftp://?
为此,您必须使用FtpWebRequest 。 通过链接。 “示例”部分提供了许多有用的示例。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.