-1

このコードを使用して、カメラから一連の画像をダウンロードしたいと思います。しかし、ダウンロードは遅いです。スライドショーで表示すると、画像シーケンスがスムーズではないことがわかります。ダウンロード処理速度を上げる方法はありますか?

for (int i = 0; i < 100; i++)
{
    string ImagePath = Server.MapPath("\\CCTV_Files\\LogFile\\" + String.Format("{0:yyyyMMdd_hhmmss}", DateTime.Now) + ".jpg");
    string ip = "http://IP.address.com:80/snapshot.cgi";

    string sourceURL = ip;
    WebRequest req = (WebRequest)WebRequest.Create(sourceURL);
    req.Credentials = new NetworkCredential("usr", "pwd");
    WebResponse resp = req.GetResponse();
    Stream stream = resp.GetResponseStream();

    Bitmap bmp = (Bitmap)Bitmap.FromStream(stream);
    bmp.Save(ImagePath);
}
4

1 に答える 1

2

ダウンロード処理速度を上げる方法はありますか?

Bitmap1 つには、データをダウンロードするときにデータのロードを停止できます。本体からディスクに生のバイトを保存するだけです。

using適切に閉じるために、応答にもステートメントを使用する必要があることに注意してください。

WebClientまた、 を使用した場合、コードも単純になる可能性が非常に高いことに注意してください。使用WebClient.DownloadFileして、フレームワークに作業を任せるだけです。

于 2012-12-13T09:51:00.660 に答える