我正在使用以下代碼通過WebResponse獲取wmv文件。我正在使用一個線程來調用此函數:如何使用WebResponse下載.wmv文件
static void GetPage(object data)
{
// Cast the object to a ThreadInfo
ThreadInfo ti = (ThreadInfo)data;
// Request the URL
WebResponse wr = WebRequest.Create(ti.url).GetResponse();
// Display the value for the Content-Length header
Console.WriteLine(ti.url + ": " + wr.Headers["Content-Length"]);
string toBeSaved = @"C:\Users\Kevin\Downloads\TempFiles" + wr.ResponseUri.PathAndQuery;
StreamWriter streamWriter = new StreamWriter(toBeSaved);
MemoryStream m = new MemoryStream();
Stream receiveStream = wr.GetResponseStream();
using (StreamReader sr = new StreamReader(receiveStream))
{
while (sr.Peek() >= 0)
{
m.WriteByte((byte)sr.Read());
}
streamWriter.Write(sr.ReadToEnd());
sr.Close();
wr.Close();
}
streamWriter.Flush();
streamWriter.Close();
// streamReader.Close();
// Let the parent thread know the process is done
ti.are.Set();
wr.Close();
}
該文件似乎下載得很好,但Windows Media Viewer無法正確打開該文件。一些關於無法支持文件類型的愚蠢錯誤。
我錯過了什麼令人難以置信的容易的事情?
您是否已驗證Windows Media Viewer是否在您的應用程序之外正常打開該文件? – thedz 2009-07-26 04:08:05
是的。應該已經清楚了。 – KevDog 2009-07-26 04:10:34