天天看點

新浪Flash下載下傳器 [HttpWebRequest | 新浪視訊]

正文

     1.     截圖

2.     使用步驟

          2.2     搜尋關鍵字.swf,找到embed标簽的src屬性,複制連接配接到軟體輸入框内。

          2.3     點選開始下載下傳。由于有些檔案比較大,下載下傳時間可能超過30秒,但是沒有關系,這裡采用的異步,你隻需要最小化或者點選右上角關閉縮小到右下角再去幹自己的事情就行了:)

          2.4     退出軟體請點選紅色感歎号的圖示按鈕!

     3.     部分代碼

               看過我圖檔下載下傳器的朋友對這部分代碼應該還是比較熟悉了,下載下傳有附帶源碼。

               代碼片段1

                //異步下載下傳檔案

                HttpWebRequest hwr = WebRequest.Create(nUrl) as HttpWebRequest;

                hwr.AllowWriteStreamBuffering = false;

                hwr.AllowAutoRedirect = true;

                //hwr.ReadWriteTimeout = 5 * 1000; //預設逾時5分鐘

                hwr.BeginGetResponse(new AsyncCallback(AsyncDownLoadResult), hwr);

               代碼片段2

            WebRequest request = (WebRequest)asyncResult.AsyncState;

            string url = request.RequestUri.ToString();

            try

            {

                WebResponse response = request.EndGetResponse(asyncResult);

                if (response.ContentLength > 0)

                {

                    if (!Directory.Exists(tbSavePath.Text.Trim()))

                        Directory.CreateDirectory(tbSavePath.Text.Trim());

                    using (Stream stream = response.GetResponseStream())

                    {

                        using (FileStream fs = File.Create(Path.Combine(tbSavePath.Text.Trim(), Path.GetFileName(url))))

                        {

                            byte[] bytes = new byte[10240];

                            int n = 1;

                            while (n > 0)

                            {

                                n = stream.Read(bytes, 0, 10240);

                                fs.Write(bytes, 0, n);

                            }

                        }

                    }

                }

            }

            catch (Exception ex)

                MessageBox.Show(ex.Message);

本文轉自over140 51CTO部落格,原文連結:http://blog.51cto.com/over140/586449,如需轉載請自行聯系原作者

繼續閱讀