zoukankan      html  css  js  c++  java
  • C#winform上传文件到服务器

    【参考网址】http://www.cnblogs.com/lmjob/archive/2008/10/14/1310617.html

    【方法】

    1.首先创建一个windows应用程序,然后为了本地测试创建一个WEB应用程序。

    在windows窗体上拖一个Button,点击事件代码:

     1  private void button2_Click(object sender, EventArgs e)
     2         {
     3             WebClient myWebClient = new WebClient();
     4             FolderBrowserDialog fbDialog = new FolderBrowserDialog();
     5             if (fbDialog.ShowDialog() == DialogResult.OK)
     6             {
     7                 string directoryPath = fbDialog.SelectedPath;
     8                 string[] fn = Directory.GetFiles(directoryPath);//E:李四区划所样方数据玉米ym2011yjphotoym370082011
     9                 foreach (string s in fn)//E:李四区划所样方数据玉米ym2011yjphotoym370082011ym370082011EEF.JPG
    10                 {
    11                     myWebClient.UploadFile("http://localhost:2610/WebSite/Default.aspx", "POST", s);
    12                 }
    13                 //myWebClient.QueryString["testkey"] = "cdhcdhcdh";
    14                 MessageBox.Show("已上传");
    15             }
    16         }

    也可以采用另外一种:

     1 public bool uploadFileByHttp(string webUrl,string localFileName)  
     2         {  
     3             // 检查文件是否存在  
     4             if (!System.IO.File.Exists(localFileName))   
     5             {  
     6                 MessageBox.Show("{0} does not exist!", localFileName);  
     7                 return false;  
     8             }  
     9             try  
    10             {  
    11                 System.Net.WebClient myWebClient = new System.Net.WebClient();  
    12                 myWebClient.UploadFile(webUrl, "POST", localFileName);  
    13             }  
    14             catch  
    15             {                 
    16                 return false;  
    17             }  
    18             return true;  
    19         }  
    20   
    21 //调用方法属于远程服务器的地址,和保存文件的地址  
    22 this.uploadFileByHttp(" http://localhost:1878/UploadFileWebSite/UploadFile.aspx", @"D:/1.txt");  

    后台测试代码:

     protected void Page_Load(object sender, EventArgs e)
        {
            foreach (string f in Request.Files.AllKeys)
            {
                HttpPostedFile file = Request.Files[f];
                file.SaveAs(@"C:/" + file.FileName);
            }
       }

    前启动WEB查看服务器地址,并据此正确填写窗体程序的UploadFile()方法的地址参数。然后启动窗体应用程序点击选取文件夹,其可将文件夹内的文件上传到服务器,然后根据程序保存到本地C盘根目录下。

    【可以完善可待思索的问题】

    1.TCP与Http上传,各有何优劣该如何选择,同时TCP上传下载也不大理解,编写的类似程序较少。

    2.如何Winform程序传递参数给WEB页面,WEB通过Request.Parameters[" "]获得呢

  • 相关阅读:
    排序方法之冒泡排序
    JAVA浮点数的范围 和精度
    史上最全的SPRING注解
    ETL应用:使用Pro*C写入文件信息入库的方法
    MySQL查询优化器工作原理解析
    php通过Mysqli和PDO连接mysql数据详解
    PHP实现各种经典算法
    http协议的状态码——400,401,403,404,500,502,503,301,302等常见网页错误代码
    程序中使用ajax时,type为put,或者delete时在 IIS上没效果,发生HTTP Error 405.0
    linux定时任务crontab
  • 原文地址:https://www.cnblogs.com/denghuachengle/p/3505037.html
Copyright © 2011-2022 走看看