使用System.Net.WebClient上傳文件


由於一直從事Web方面的開發工作,所以對Winform這塊不太熟悉,今天接到一個新的需求,就是在一個C++程序里面需要上傳一個文件到IIS服務器上面來,由於C++的C#的差異性,我們不能直接使用對象,所以我們決定采用字節流的方式來上傳文件。

由於只是一個測試程序,而且C++那邊還沒有開發完,所以我就貼了我C#這邊的一段測試程序,原理是一樣的。

發送端代碼,這里代碼相對簡陋,大家看看就可以了,需要的話可以自己優化

        private void button1_Click(object sender, EventArgs e)
        {
            System.Net.WebClient client = new System.Net.WebClient();

            client.UploadFile("http://192.168.1.150:12236/default.aspx?filename=1.3.7.42.rar", "d:/1.3.7.42.rar");
        }

然后就是接受端的代碼了。也是很簡單的

        protected void Page_Load(object sender, EventArgs e)
        {
            string fileName = "c:/vhost/wenjianshangchuan/" + Request.QueryString["filename"].Replace(".rar", "_bak.rar");
            System.IO.Stream stream = Request.InputStream;
            byte[] bytes = new byte[stream.Length];
            stream.Read(bytes, 0, bytes.Length);
            stream.Seek(0, SeekOrigin.Begin);
            stream.Flush();
            stream.Close();
            stream.Dispose();

            FileStream fs = new FileStream(fileName, FileMode.Create);
            BinaryWriter bw = new BinaryWriter(fs);
            bw.Write(bytes);
            bw.Close();
            fs.Close();
        }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM