将图像从URL保存到C#中的本地文件
本文关键字:文件 图像 URL 保存 | 更新日期: 2023-09-27 18:24:27
我有以下代码,可以将带有URL的图像保存到本地文件中。
using (WebClient client = new WebClient())
{
client.DownloadFile("http://images.craigslist.org/00o0o_kFhPDdTGf2e_600x450.jpg", "c:''Tmp'test.jpg");
}
但当我运行它时,我会遇到一个异常。它说"WebClient请求过程中出现异常。"当我在deubgger中看到这个例外时。上面写着"路径中有非法字符"
我通过浏览器检查url是否有效。那么问题出在哪里呢?
您应该使用类似的,@符号
using (WebClient client = new WebClient())
{
client.DownloadFile(@"http://images.craigslist.org/00o0o_kFhPDdTGf2e_600x450.jpg", @"c:''Tmp'test.jpg");
}
您的路径包含一个制表符:'t
。转义第二个反斜杠:"C:''Tmp''test.jpg"
"c:''Tmp'test.jpg"
您忘记逃离第二个t
。
您应该使用@"c:'Tmp'test.jpg"
或"c:''Tmp''test.jpg"
只需在路径名之前放一个@符号。
using (WebClient client = new WebClient())
{
client.DownloadFile(@"http://images.craigslist.org/00o0o_kFhPDdTGf2e_600x450.jpg", @"c:'Tmp'test.jpg");
}
您的路径包含't
,这是一个非法的路径字符。反斜杠是C#中的保留字符,用于制表符和换行符等字符,因此必须转义。
您可以将其设为双反斜杠"C:''Tmp''test.jpg"
,也可以在@"C:'Tmp'test.jpg"
的开头用@字符转义整个字符串
尝试:
"C:''Tmp''test.jpg"
对于您的文件名
像对待其他绳子一样对待它们。第一个反斜杠是转义符,第二个是识别反斜杠