WPF-模拟动态更换logo的过程(2),如何把网上的图片下载到指定目录。

上一步,我们已经获取了图片应该保存的地址。现在只需要传入URL把图片下载到指定目录。

从网上下载图片也有俩种方法。

第一种:

 WebRequest request = WebRequest.Create("https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1578031102838&di=1d5e032e5139eef33ab821b5f3522b64&imgtype=0&src=http%3A%2F%2Fimg.zcool.cn%2Fcommunity%2F017ee65835168ca801219c779ff093.jpg");
            WebResponse response = request.GetResponse();
            Stream reader = response.GetResponseStream();
            FileStream writer = new FileStream($"{System.Environment.CurrentDirectory}/test.jpg", FileMode.Create, FileAccess.ReadWrite);//获取根目录方法二
            byte[] buff = new byte[512];
            int c = 0; //实际读取的字节数
            while ((c = reader.Read(buff, 0, buff.Length)) > 0)
            {
                writer.Write(buff, 0, c);
            }
            writer.Close();
            writer.Dispose();
            reader.Close();
            reader.Dispose();
            response.Close();

第二种:

 //下载图片的方法二
    using (WebClient webClient = new WebClient())
           {
             webClient.DownloadFile("http://服务器地址/1.png", @"d:\temp\image1.png");
        }

  

原文地址:https://www.cnblogs.com/king10086/p/12144106.html

时间: 2024-07-31 06:50:36

WPF-模拟动态更换logo的过程(2),如何把网上的图片下载到指定目录。的相关文章

WPF-模拟动态更换logo的过程(1),如何获取程序的根目录。

假设现在需要从网上下载一个图片到项目目录下,展示下载的图片,然后删除正在展示的图片(模拟更换logo的过程),替换新的图片. 下载图片之前需要确定图片应存的地址,图片不能存在本地(比如图片存在D盘的某个文件下,但是用户如果没有D盘就会出错),所以应该存在程序的根目录下. 有俩个方法可以获取程序的根目录. 1.这种方法比较灵活,可以获取根目录以及其之上的目录. public string GetProjectRootPath() { string rootPath = ""; strin

在WPF中使用PlaneProjection模拟动态3D效果

原文:在WPF中使用PlaneProjection模拟动态3D效果 虽然在WPF中也集成了3D呈现的功能,在简单的3D应用中,有时候并不需要真实光影的3D场景.毕竟使用3D引擎会消耗很多资源,有时候使用各种变换和假的阴影贴图也能设计出既省资源,又有很好用户体验的“伪”3D界面. 在Silverlight中,因为性能问题,一般并不使用真3D引擎,微软为Silverlight提供了System.Windows.Media.PlaneProjection 类,用投影变换来模拟3D的效果. 下面让我们看

用两个队列模拟实现一个栈的过程

栈具有"后进先出"的特点,即某个元素最后进入栈,却最先出栈:队列具有"先进先出"的特点,即元素从队尾依次进队列,依次从队头出队列:现在用两个队列模拟实现一个栈的过程,详细过程请看下面这张本人制作的gif图: 实现代码: #include <iostream> using namespace std; #include <queue> template <typename T> class Stack { public: void

wpf 模拟3D效果(和手机浏览图片效果相似)(附源码)

原文 wpf 模拟3D效果(和手机浏览图片效果相似)(附源码) pf的3D是一个很有意思的东西,类似于ps的效果,类似于电影动画的效果,因为动画的效果,(对于3D基础的摄像机,光源,之类不介绍,对于依赖属性也不介绍.),个人认为,依赖属性这个东西,有百分之五十是为了3D而存在.(自己写的类似于demo的东西)先上图,无图无真相这是demo的整个效果图,可以用鼠标移动,触摸屏也可以手指滑动,图片会移动,然后移动结束,会有一个回弹的判断. <Window x:Class="_3Dshow.Wi

WPF 中动态改变控件模板

在某些项目中,可能需要动态的改变控件的模板,例如软件中可以选择不同的主题,在不同的主题下软件界面.控件的样式都会有所不同,这时即可通过改变控件模板的方式实现期望的功能. 基本方法是当用户点击切换主题按钮是加载新的资源字典,并使用新加载的资源字典替代当前的资源字典这时要用到ResourceManager. 假设现有两个不同的资源字典文件Dictionary1.xaml和Dictionary2.xaml存在于Themes文件夹内: 在MainPage中使用其中一个资源字典作为默认样式文件: <Win

WPF中动态更新TextBlock文字中的超链接,文本

1.------------------------------------------------------------------------- 修改超链接的文本文字: <TextBlock><Hyperlink> <TextBlock  x:Name="TextBlockNeedChange" Text="改变的文本" /> </Hyperlink></TextBlock> 修改TextBlockN

手动模拟attach cinder volume的过程

我们首先启动一台机器,启动的时候attach一个volume 创建一个空的cinder volume root:~# cinder create --display-name emptyvolume11g 11+---------------------+--------------------------------------+|       Property      |                Value                 |+--------------------

动态更换应用Icon

转:原理1--activity-alias 在AndroidMainifest中,有两个属性: // 决定应用程序最先启动的Activity android.intent.action.MAIN // 决定应用程序是否显示在程序列表里 android.intent.category.LAUNCHER 另外,还有一个activity-alias属性,这个属性可以用于创建多个不同的入口,相信做过系统Setting和Launcher开发的开发者在系统的源码中应该见过很多. 原理2--PM.setCom

关于NGUI动态加载图片,并且实现动态打图集的过程

注:一些代码是在网上找的,太多就没有写. 前几天做项目,遇到所要用的的大量图片都必须从网上下载,当时用的NGUI做的UI界面,当时上网找了好多,都不行,最后找一篇还差不多,但是也不好用,我重新捋了一遍: 首先,我想到的就是用NGUI的UITexture组件的UITexture.mainTexture来直接将WWW获取的图片给赋值上去,这样很简单,但是有新的问题,图片量比较大,如果图片少的话可以使用这种方法. 其次,换UI界面了,用UGUI做,UGUI是自动打图集,所以说方便,也可以用一两个Raw