c# - 如何从 URI 下载图像并从中创建位图对象?

标签 c# windows-phone

我正在尝试从网站下载图像并基于该图像创建位图。它看起来像这样:

    public void test()
    {
            PostWebClient client = new PostWebClient(callback);
            cookieContainer = new CookieContainer();
            client.cookies = cookieContainer;
            client.download(new Uri("SITE"));
    }

    public void callback(bool error, string res)
    {
            byte[] byteArray = UnicodeEncoding.UTF8.GetBytes(res);

            MemoryStream stream = new MemoryStream( byteArray );
            var tmp = new BitmapImage();
            tmp.SetSource(stream);
    }

我在回调方法的最后一行收到“未指定错误”。有趣的是,如果我使用 BitmapImage(new Uri("SITE")) 它效果很好......(我不能那样做,因为我想从那个 URL 获取 cookie。图像是 jpg。 PostWebClient 类 -> http://paste.org/53413

最佳答案

这是 Bitmap 类文档中最简单的代码。

  System.Net.WebRequest request = 
        System.Net.WebRequest.Create(
        "http://www.microsoft.com//h/en-us/r/ms_masthead_ltr.gif");
    System.Net.WebResponse response = request.GetResponse();
    System.IO.Stream responseStream = 
        response.GetResponseStream();
    Bitmap bitmap2 = new Bitmap(responseStream);

MSDN link for Bitmap

关于c# - 如何从 URI 下载图像并从中创建位图对象?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12142634/

相关文章:

c# - asp.net 中服务器传输中的 ThreadAbortException

c# - 如何从流源中再现音频

c# - 如何在诺基亚 map for WP8 中设置 Tile Sources 的不透明度?

windows-phone-7 - 如何在 Windows Phone 设备上获取屏幕分辨率

c# - Windows Phone - 使用互斥锁进行独立存储

c# - Windows Phone 7 - 联系人和日历 UniqueID

c# - 64 位 .NET 应用程序中是否忽略了 CallingConvention?

c# - 删除已经绘制的形状

c# - Json.NET,无法反序列化可为空的类型

c# - 添加多个 GET 动词会出现 AmbigouslyMatchException 错误