zoukankan      html  css  js  c++  java
  • WebClient 四

    WebClient(1、2、3)介绍了读数据流和下载远程网页数据流的相关内容。本节开始介绍向url 远程主机可写数据流写数据。同时还将介绍相关的的上传数据到远程主机上。

    请看入如下事例代代码,及相关的代码实现其代码的剖析:


    2 //写入数据流
    3            byte[] postdata = System.Text.Encoding.ASCII.GetBytes(string.Format("{0}writeInfo",DateTime.Now.ToString("yyyy-MM-dd HH:ss")));
    4            WebClient client = new WebClient();
    5            Stream stream = client.OpenWrite("http://localhost:85/uploadfile.txt""PUT");
    6            stream.Write(postdata, 0, postdata.Length);
    7            stream.Close();

    如上事例可以向远程主机谢数据,其实最关键的是获取一个可写的数据流,获取一个可写数据流向数据流中写入数据。其中WebClient.OpeWirte 核心实现其功能的是通过 WebRequest

    创建一个事例后返回一个网络可写的数据流,代码分析如下:

      1   

    2           WebRequest request = WebRequest.Create(new Uri("http://localhost:85/uploadfile.txt"));
    3            request.Credentials = CredentialCache.DefaultCredentials;
    4            request.Method = "PUT";
    5            Stream stream =  request.GetRequestStream();
    6            stream.Write(postdata, 0, postdata.Length);
    7            stream.Close();

     如上2-4行实现了WebClient.openWrite的功能,这里只是些了核心的代码,真实是现实功能比这里要多许多相关的条件。 还有一点是需要把网络扩展是Web服务扩展中的WebDAV改为允许,默认是静止的。还有用于异步写数据的OpenWriteAsync ,有用篇幅限制。这里就不做过多介绍。

    由于时间限制,由于时间时间有限。未完待续。。。 

  • 相关阅读:
    【转】java线程池ThreadPoolExecutor使用介绍
    java的类加载机制
    java面试问题分类
    ConcurrentHashMap总结
    ffmpeg对视频封装和分离
    SSM的整合
    单例模式的七种写法
    SecureCRT的快捷键
    linux下mysql常用命令
    maven操作
  • 原文地址:https://www.cnblogs.com/andyyu/p/2009576.html
Copyright © 2011-2022 走看看