我正在用 C# 创建下载管理器。我目前正在设计给定 URL 的下载组件,从 URL 分段下载文件。
我目前正在为每个块使用 I/O 流,如下所示:
MyChunks.InputStream = rs ;
//rs is obtained by using GetResponse() from FtpWebRequest or HttpWebRequest
MyChunks.OutputStream = fs ; //fs is FileStream for writing on local file
chunksize = MyChunks.InputStream.Read(buffer, 0, bufferSize);
MyChunks.OutputStream.Write(buffer, 0, (int)chunksize);
关于我分析的其他方法,我发现我也可以使用 `WebClient.DownloadDataAsync` 方法。
但是,我不能利用在多个线程上下载的数据块来加快下载速度。此外,上面的代码工作正常。
我的问题是:
有没有其他方法可以下载块或上面的代码就可以了?
另外,我想在下载音频(mp3)/视频文件时播放它们,你能建议做同样的方法吗?