我处于这样一种情况:我必须将一个文件下载到Bytearray并在该字节数组中进行一些更改,同时我必须下载另一个大文件并将第一个文件与修改后的字节合并到其中飞行并使用MediaElement播放。
使用Webclient我可以下载文件,但webclient只允许我在文件下载完成时访问其dwonloaded bytearray。
有没有办法下载文件并在Silverlight中动态修改文件的字节数组。
我无法使用套接字,我只能从网络服务器下载文件。
大家的任何帮助都表示赞赏
答案 0 :(得分:1)
我看不出Webclient有什么问题。
您应该以字节数组的形式复制WebClients的结果。 一旦下载了每个文件,就可以合并这些字节数组。
byte[] bytes;
public void DownloadFile()
{
WebClient webClient = new WebClient();
webClient.OpenReadCompleted += (s, e) =>
{
Stream stream = e.Result;
MemoryStream ms = new MemoryStream();
stream.CopyTo(ms);
bytes = ms.ToArray();
};
webClient.OpenReadAsync(new Uri("http://myurl.com/file.zip"), UriKind.Absolute);
}