aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAx4AAAI7CAIAAADtTtpYAAAgAElEQVR4nO3dX6xlV33Y8f3UJFUqHqJKtFJCK7WKW9I+dIJUgRS1UpMQp20ID3nIU6VCADsOCZA6gSS0+dMCprSQQj0GJ05DbYc5Y2yPjf+N67EHj+3QMtEAIe3QiRucYJsELpKrthkPpw9jX5+1z97r7L3W79yzz7mfj5ase/fde52199n3nO/cGc80pwAACNKcOnXqIgDApj32utdt0eg8BWkFAEzFxmtJWgEAu2PjtSStAIDdsfFaklYAwO7YeC1JKwBgd2y8lqQVALA7Nl5L0goA2LArxshPtfFaklYAwIZNLa3mLxq4fTNpdeHChXMjXbhwoeT5AQC2ytTSqrOiwruqNq3OnTt39uzZCwvOnj17+uQtv3vnNZfHE3dc8/jtP/nobVefnl196hNXPXTXh8+dO1fy/AAAW2VlMA3fM7B7FltqHV0VkFatn0JduHDhzL0f+P2bX/HkPd//v+6/8sl7X/s/7/5H/+OOf/DF2159+vpXPHjLVdIKDrXzN7y+6xes1z6w6YU9cO0VV7z+hvObXgbskGmm1WJRraOr1pNW93zgvx/723/+1K3f/Oo933z29m9+5eZLT91w6cnrHvutV93722+WVnCoTTGtHrj2hVVIK4g02bRa38+r1pVWj37qA5+/5Yr/90c3XfrKzZeeOnrpyesufeldl/7gqlNH/9aJ33yTtIJD7XJabf6HVJe9FFWvf720gmCTTaup/9Tq8ccfX/xT6k888cTpu/7tZ3/rb/zfL73v0pPvu/Sldz3/B1c//7kff/7sD933we+87aNvlFZwqE0vra594OKLy5JWEGmaabUFf9bqkRs+dPpn3/DQO9548u1vvPdtP/HA0V8/def7Hz36Xf/n82+99MWrn//cj188e+XFz7z64mPfc+K67/jE9W+QVnCoDUmr/Z8ldf1m4f4EL/zW4uUceuDaFz986eD94xbm64snaQXxJphW2/F/CD7yjjc89qqXf/ZHX/PYa7/3zr/7V+7+mTedvP26Bz748v/9mR99/uyVz3/mNRcf+zsXH/1rFx95+Sf/9bff+hFpBYfbirTq+aNYCwe8MMENL+6YpNUN1y4d1uq0nseWVhBvamm1HX+v1blz5x58+xt/93Wv+cbxW5/99X931z981Sd/+s33Hb/ujvd8x1dP/r1vPPTKb5x8xd59f3nvnpft3fOyY//q227+8D+XVnCodbbTi0nz4hcX66e9bX+CJJFeDKj9OFp4nP1tL+zU1VbSikOn8xcxnWoeImrPwB8pHcDoPIURaXXP237i1A++6tn/8IEn33rVrd/7ylt/6i2fOva+m975l/7TL7zsN37+2z/6L/7i0Xd82/Vv/9br3/4t//6ab5FWcNjl0qqvby4n0QtF9MIErT5KdrnYu+NLv2/YuSxpxSFyMGkV9Sgbr6UDTas7fubNd736e/7wp6/6/A9//43f/dd/+5qrHrz/9k994n13/c57T9z63jtvec8dN7807j3xcWkFh1ruNwT7wic5pnuCjkO7dpRWsJ02XksHmlbH3vqWG6/4rk9+39+/5ZXf/Z7v/Ks3/uTVdz/46I33/N7l8bFPnb3hrs9+7MR/PfnQw1/4whfOnj0rreBQk1bAeBuvpQNNq0/+m1/96D/5wY/849d+8Id/6P1XXvmff/XXjt3/xDtve/LX7nr6l+985l3Hn37bx//obb/5uXtOPvLMM89c/jcHoy84sD1WplXH15IgklZwCG28lg40rU6fPn3mzJkzZ848/PDDn/70p0+fPv079z3+c5/4w4/9l4sfunf+7tn8LTd8/Z+9/4m7739YWgH5/0Mw88fYW38+XVrBobLxWjrQtDp//vxzzz23t7d35syZp5566vz58x8/8eibrv/i++/683fP5lff+M0fe++z//TnHjpx7ylpBRT+5QsLzSOt4BDaeC0daFpd/odunnvuuTNnzlyOp9+YPfIj737sx37l937kF8/+wM/+t++75swPvPX+O+95SFoBQ/7K0FZetXpHWsEhtPFaOtC0Onv27IULF86fP3/69OnLf1D9trtP/cpHT/3L//jQL334wV/40Ml3fvCBX/7IyfseeMgfYwcACmy8lg4urS7/FGqU1j/nDACw84amFQAAK0krAIAw0goAIIy0AgAII60AAMJIKwCAMNIKACCMtAIACCOtAADC5NLq9wEA6FGSVnsAACyRVgAAYaQVAEAYaQUAEEZaAQCEkVYAAGGkFQBAGGkFABBGWgEAhJFWAABhpBUAQBhpBQAQRloBAISRVgAAYaQVAEAYaQUAEEZaAQCEkVYAAGGkFQBAGGkFABBGWgEAhJFWAABhpBUAQBhpBQAQ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rQAgIa1qSCtpBQAJaVVDWkkrAEhIqxrSSloBQEJa1ZBW0goAEtKqhrSSVgCQkFY1pJW0AoCEtKohraQVACSkVQ1pJa0AICGtakgraQUACWlVQ1pJKwBISKsa0kpaAUBCWtWQVtIKABLSqoa0klYAkJBWNaSVtAKAhLSqIa2kFQAkpFUNaSWtACAhrWpIK2kFAAlpVUNaSSsASEirGtJKWgFAQlrVkFbSCgAS0qqGtJJWAJCQVjWklbQCgIS0qiGtpBUAJKRVDWklrQAgIa1qSCtpBQAJaVVDWkkrAEhIqxrSSloBQEJa1ZBW0goAEtKqhrSSVgCQkFY1pJW0AoCEtKohraQVACSkVQ1pJa0AICGtakgraQUACWlVQ1pJKwBISKsa0kpaAUBCWtWQVtIKABLSqoa0klYAkJBWNaSVtAKAhLSqIa2kFQAkpFUNaSWtACAhrWpIK2kFAAlpVUNaSSsASEirGtJKWgFAQlrVkFbSCgAS0qqGtJJWAJCQVjWklbQCgIS0qiGtpBUAJKRVDWklrQAgIa1qSCtpBQAJaVVDWkkrAEhIqxrSSloBQEJa1ZBW0goAEtKqhrSSVgCQkFY1pJW0AoCEtKohraQVACSkVQ1pJa0AICGtakgraQUACWlVQ1pJKwBISKsa0kpaAUBCWtWQVtIKABLSqoa0klYAkJBWNaSVtAKAhLSqIa2kFQAkpFUNaSWtACAhrWpIK2kFAAlpVUNaSSsASEirGtJKWgFAQlrVkFbSCgAS0qqGtJJWAJCQVjWklbQCgIS0qiGtpBUAJKRVDWklrQAgIa1qSCtpBQAJaVVDWkkrAEhIqxrSSloBQEJa1ZBW0goAEtKqhrSSVgCQkFY1pJW0AoCEtKohraQVACSkVQ1pJa0AICGtakgraQUACWlVQ1pJKwBISKsa0kpaAUBCWtWQVtIKABLSqoa0klYAkJBWNaSVtAKAhLSqIa2kFQAkpFUNaSWtACAhrWpIK2kFAAlpVUNaSSsASEirGtJKWgFAQlrVkFbSCgAS0qqGtJJWAJCQVjWklbQCgIS0qiGtpBUAJKRVDWklrQAgIa1qSCtpBQAJaVVDWkkrAEhIqxrSSloBQEJa1ZBW0goAEtKqhrSSVgCQkFY1pJW0AoCEtKohraQVACSkVQ1pJa0AICGtakgraQUACWlVQ1pJKwBISKsa0kpaAUBC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" alt="" />

private void button1_Click(object sender, EventArgs e)
{
WebClient webclient = new WebClient();
webclient.Proxy = null;
webclient.Encoding = Encoding.UTF8;
richTextBox1.AppendText(webclient.DownloadString(textBox1.Text.Trim()));
webclient.Dispose();
} private void button2_Click(object sender, EventArgs e)
{
WebClient webclient = new WebClient();
webclient.Proxy = null;
webclient.DownloadFile(textBox2.Text, textBox3.Text);
MessageBox.Show("成功!");
webclient.Dispose(); } private void button3_Click(object sender, EventArgs e)
{
WebClient webclient = new WebClient();
webclient.Proxy = null;
webclient.DownloadProgressChanged += webclient_DownloadProgressChanged;
webclient.DownloadDataCompleted += webclient_DownloadDataCompleted;
webclient.DownloadFileAsync(new Uri(textBox2.Text), textBox3.Text);
webclient.Dispose();
} void webclient_DownloadDataCompleted(object sender, DownloadDataCompletedEventArgs e)
{
MessageBox.Show("成功");
} void webclient_DownloadProgressChanged(object sender, DownloadProgressChangedEventArgs e)
{
progressBar1.Value = e.ProgressPercentage;
}

使用WebClient类对网页下载源码,对文件下载保存及异步下载并报告下载进度的更多相关文章

  1. Hadoop之HDFS原理及文件上传下载源码分析(下)

    上篇Hadoop之HDFS原理及文件上传下载源码分析(上)楼主主要介绍了hdfs原理及FileSystem的初始化源码解析, Client如何与NameNode建立RPC通信.本篇将继续介绍hdfs文 ...

  2. maven 下载 源码和javadoc 命令

    摘要:我们在写代码时候,往往是想查看一下源码,看看源码的一些细节内容.一般情况下,在IDE(如eclipse)中近仅仅只需按住ctrl+ 点击对应的方法即可进入对应的源码部分.但是有些时候很多依赖项并 ...

  3. Android———从GitHub上下载源码的方法【Written By KillerLegend】

    首先声明,本文说的是从GitHub上下载源码而非上传源码! 1:下载tortoisegit,下载地址为: https://code.google.com/p/tortoisegit/wiki/Down ...

  4. 【Maven】Maven下载源码和Javadoc的方法

    1:Maven命令下载源码和javadocs 当在IDE中使用Maven时如果想要看引用的jar包中类的源码和javadoc需要通过maven命令下载这些源码,然后再进行引入,通过mvn命令能够容易的 ...

  5. maven 下载 源码和javadoc命令

    1:Maven命令下载源码和javadocs 当在IDE中使用Maven时如果想要看引用的jar包中类的源码和javadoc需要通过maven命令下载这些源码,然后再进行引入,通过mvn命令能够容易的 ...

  6. mvn 下载源码和javadoc

    1. 下载源码,两种: . mvn dependency:sources . mvn eclipse:eclipse -DdownloadSources=true 2. 下载javadoc,两种: . ...

  7. maven编译下载源码

    下载源码 mvn dependency:sources 跳过TEST mvn  -DskipTests

  8. 查看android源码,windows环境下载源码

    查看源码 参考: http://blog.csdn.net/janronehoo/article/details/8560304 步骤: 添加chrome插件 Android SDK Search 进 ...

  9. 上传本地代码到github&&从github下载源码

    最近在玩github,下面简单介绍下githup的使用 将本地代码同步到github. 使用Git GUI同步  1,先下载git,然后安装.右键如图所示. 2,在github里新建一个 reposi ...

随机推荐

  1. php webservice 可能存在的坑

    场景: 今天在生产机器上调用webservice失败 报 ...failed to load external entity... wget一下地址发现报500错误  把wsdl去掉再wget 发现就 ...

  2. Express 总结

    Express Express提供了一个轻量级模块,把nodejs的http功能封装在一个简单易用的接口中.Express也扩展了http模块的功能,能轻松处理服务器的路由.响应.cookie和HTT ...

  3. Sql Server Profiler使用

            在使用Entity Framework的过程当中,有时候需要看Entity Framework自动生成的Sql语句,在客户端可以使用跟踪的方法看到每次查询时的Sql语句,其实通过数据库 ...

  4. Spark性能优化--开发调优与资源调优

    参考: https://tech.meituan.com/spark-tuning-basic.html https://zhuanlan.zhihu.com/p/22024169 一.开发调优 1. ...

  5. 解决Entity Framework查询匿名对象后的跨域访问的一种方式

    在Entity Framework中,可以使用lambda表达式进行对数据的查询,而且可以将查询结果直接映射为对象或者对象列表,这极大的提高的开发速度,并且使数据层的数据更加方便处理和传递.但是很多时 ...

  6. JavaWeb(二)——Tomcat服务器(一)

    一.Tomcat服务器端口的配置 Tomcat的所有配置都放在conf文件夹之中,里面的server.xml文件是配置的核心文件. 如果想修改Tomcat服务器的启动端口,则可以在server.xml ...

  7. 华硕N43sl VNP 连接问题 800 807 621

    使用VPN 创建连接,在我自己的电脑上死活连接不上,换到别人的电脑就是可以妥妥的连接. 换了几多个IP都是800错误,经过测试都不能连接.于是开始排查,把防火墙关闭,把杀毒软件关闭, 在开始命令 输入 ...

  8. Java开发工程师(Web方向) - 03.数据库开发 - 第3章.SQL注入与防范

    第3章--SQL注入与防范 SQL注入与防范 经常遇到的问题:数据安全问题,尤其是sql注入导致的数据库的安全漏洞 国内著名漏洞曝光平台:WooYun.org 数据库泄露的风险:用户信息.交易信息的泄 ...

  9. 进度条加载与案例优化对比——python使用perf_count方法实现

    本章我们将讨论python3 perf_counter()的用法及它的实际应用我从中选取两个python基于rquests库的爬虫实例代码源文件进行举例 Python3 perf_counter() ...

  10. 227. Mock Hanoi Tower by Stacks【LintCode java】

    Description In the classic problem of Towers of Hanoi, you have 3 towers and N disks of different si ...