-1
wc.DownloadFile(src.Value, @"d:\MyImages\" + images.ToString("D6"));

wcWebClient

src.Value例如将包含www.google.com\danny.jpg. 我想把它保存在我的硬盘上danny.jpg。如果在src.Value那里,www.google.com\moses.png那么在我的硬盘上它将是moses.png

要将其按原样保存src.Value,请使用文件名及其格式、png、jpg、gif 或任何格式。

变量图像不在Form1我每次保存时向上移动的级别,例如:

images++;

因此,现在每次从我的硬盘上的链接中保存文件时,它将是 000000,然后是 000001,然后是 000002,等等。但是我想保存它们,因为它们出现在链接中的名称和格式。

4

3 回答 3

1

尝试使用Uri.Segments

示例代码:

String fileToDL = @"http://stackoverflow.com/Content/Img/stackoverflow-logo-250.png";
Uri uri = new Uri(fileToDL );
var filename = uri.Segments.Last();
wc.DownloadFile(Path.Combine(@"d:\MyImages", filename), fileToDL);
于 2012-09-15T08:06:14.137 回答
0

我们举一个简单的例子:

string str = "www.google.com/xyz/abc/danny.jpg";
string[] arr = str.Split('/');
string img = arr[arr.length-1];    
wc.DownloadFile(src.Value, @"d:\MyImages\" + img);

img将为您提供要保存在硬盘上的文件名。

于 2012-09-15T07:57:34.347 回答
0

对我来说,很难理解你的问题是什么。因此,我将尝试回答到目前为止我所理解的内容。

我猜你在用正确的名称保存下载的图像时遇到了一些问题。

在您的示例中,您有某种src使用 property调用的控件或类Value。我假设在这种情况下src.Value会输出例如“www.google.com\moses.png”。您只需从此字符串中提取“moses.png”并将其存储在单独的变量中。

关于MSDN所说的WebClient应该没有问题。

请查看MSDN - WebClient.DownloadFile Method (String, String)以获取有关此方法和示例的更多信息。

我希望我能帮助你,但如果不能,请更好地描述你的问题:)

于 2012-09-15T08:05:11.287 回答