C#下载名称与URL中名称相同的图像

RimantasRadžiūnas

我有一种方法可以从请求的网站网址中保存图片,但会将图片另存为wallpaper.jpg是否可以保存与给定url中的名称相同的图像(例如,将https://i.imgur.com/l7s8uDA.png作为l7s8uDA.jpg

这是代码:

private void DownloadImage(string uri)
{
    string fileName = Environment.CurrentDirectory + "\\Wallpapers\\wallpaper.jpg";
    HttpWebRequest request = (HttpWebRequest)WebRequest.Create(uri);
    HttpWebResponse response = (HttpWebResponse)request.GetResponse();

    // Check that the remote file was found. The ContentType
    // check is performed since a request for a non-existent
    // image file might be redirected to a 404-page, which would
    // yield the StatusCode "OK", even though the image was not
    // found.
    if ((response.StatusCode == HttpStatusCode.OK ||
        response.StatusCode == HttpStatusCode.Moved ||
        response.StatusCode == HttpStatusCode.Redirect) &&
        response.ContentType.StartsWith("image", StringComparison.OrdinalIgnoreCase))
    {
        // if the remote file was found, download oit
        using (Stream inputStream = response.GetResponseStream())
        using (Stream outputStream = File.OpenWrite(fileName))
        {
            byte[] buffer = new byte[4096];
            int bytesRead;

            do
            {
                bytesRead = inputStream.Read(buffer, 0, buffer.Length);
                outputStream.Write(buffer, 0, bytesRead);
            } while (bytesRead != 0);
        }
    }
}
雷扎·阿盖伊(Reza Aghaei)

您可以通过以下方式从uri获取文件名:

var uri = new Uri("https://i.imgur.com/l7s8uDA.png");
var name= System.IO.Path.GetFileName(uri.LocalPath);

另外,如果您需要不带扩展名的文件名:

var name = System.IO.Path.GetFileNameWithoutExtension(uri.LocalPath)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

PHP从URL下载图像而没有直接的图像名称

来自分类Dev

使用滑块中的图像名称更新URL

来自分类Dev

如何从javascript中的URL获取图像名称

来自分类Dev

使用C#从URL下载.webp图像

来自分类Dev

即使提供了不同的URL,也会下载具有相同名称的相同文件

来自分类Dev

即使提供了不同的URL,也会下载具有相同名称的相同文件

来自分类Dev

C#中不同面板中具有相同名称的控件

来自分类Dev

如何从C#中具有相同名称的文件夹中打开文件

来自分类Dev

在python opencv模块中编辑后以相同的名称保存图像

来自分类Dev

从相同列名称的数据库中获取图像

来自分类Dev

与.htaccess中的URL的起始名称相同的URL重写问题

来自分类Dev

如何使用c#名称下载文件?

来自分类Dev

从C#中的img src下载图像

来自分类Dev

我的剧本没有下载具有相同标签名称的更新图像

来自分类Dev

在C#中反序列化具有相同名称的多个XML元素

来自分类Dev

C#将文件重命名为与其他目录中的文件相同的名称

来自分类Dev

在 c# 中单击时使用相同的单击事件获取多个面板名称

来自分类Dev

如何使用函数传递控件名称以在 C# 中执行相同的代码例程

来自分类Dev

如何使用C#在Visual Studio中访问图片框中的图像名称

来自分类Dev

C#中类型名称中的<>符号

来自分类Dev

C#中的标题名称到进程名称

来自分类Dev

如何从相同的名称xml C#获取所有值

来自分类Dev

C#具有多个值的相同枚举名称

来自分类Dev

c# xml 元素上的相同标记名称

来自分类Dev

快速从URL获取图像名称

来自分类Dev

快速从URL获取图像名称

来自分类Dev

C#中的类型名称空间问题

来自分类Dev

在C#中输出枚举职位名称

来自分类Dev

在C#中覆盖Json属性名称

Related 相关文章

  1. 1

    PHP从URL下载图像而没有直接的图像名称

  2. 2

    使用滑块中的图像名称更新URL

  3. 3

    如何从javascript中的URL获取图像名称

  4. 4

    使用C#从URL下载.webp图像

  5. 5

    即使提供了不同的URL,也会下载具有相同名称的相同文件

  6. 6

    即使提供了不同的URL,也会下载具有相同名称的相同文件

  7. 7

    C#中不同面板中具有相同名称的控件

  8. 8

    如何从C#中具有相同名称的文件夹中打开文件

  9. 9

    在python opencv模块中编辑后以相同的名称保存图像

  10. 10

    从相同列名称的数据库中获取图像

  11. 11

    与.htaccess中的URL的起始名称相同的URL重写问题

  12. 12

    如何使用c#名称下载文件?

  13. 13

    从C#中的img src下载图像

  14. 14

    我的剧本没有下载具有相同标签名称的更新图像

  15. 15

    在C#中反序列化具有相同名称的多个XML元素

  16. 16

    C#将文件重命名为与其他目录中的文件相同的名称

  17. 17

    在 c# 中单击时使用相同的单击事件获取多个面板名称

  18. 18

    如何使用函数传递控件名称以在 C# 中执行相同的代码例程

  19. 19

    如何使用C#在Visual Studio中访问图片框中的图像名称

  20. 20

    C#中类型名称中的<>符号

  21. 21

    C#中的标题名称到进程名称

  22. 22

    如何从相同的名称xml C#获取所有值

  23. 23

    C#具有多个值的相同枚举名称

  24. 24

    c# xml 元素上的相同标记名称

  25. 25

    快速从URL获取图像名称

  26. 26

    快速从URL获取图像名称

  27. 27

    C#中的类型名称空间问题

  28. 28

    在C#中输出枚举职位名称

  29. 29

    在C#中覆盖Json属性名称

热门标签

归档