web-dev-qa-db-ja.com

ImageクラスでFromStreamが見つかりません

私は次のコードを持っています:

Image tmpimg = null;
HttpWebRequest httpWebRequest = (HttpWebRequest)HttpWebRequest.Create(url);
HttpWebResponse httpWebReponse = (HttpWebResponse)httpWebRequest.GetResponse();
Stream stream = httpWebReponse.GetResponseStream();
return Image.FromStream(stream);

Image.と入力したときの最後の行では、FromStreamはリストにありません。私に何ができる?

23
user896692

おそらくusing System.Drawing;

8
SLaks

Usingおよび必要な名前空間を使用したより詳細な例。

using System.Net;
using System.IO;
using System.Drawing;

public static Image GetImageFromUrl(string url)
    {
        HttpWebRequest httpWebRequest = (HttpWebRequest)HttpWebRequest.Create(url);

            using (HttpWebResponse httpWebReponse = (HttpWebResponse)httpWebRequest.GetResponse())
            {
                using (Stream stream = httpWebReponse.GetResponseStream())
                {
                    return Image.FromStream(stream);
                }
            }
    }

簡単にコピーしてソリューションに貼り付けることができるため、これで時間を節約できることを願っています。

〜乾杯!!

28
Rogala

これを試してください:

    using System.Drawing;
    using System.IO;
    using System.Net;

    public static Image GetImageFromUrl(string url)
    {
        using (var webClient = new WebClient())
        {
            return ByteArrayToImage(webClient.DownloadData(url));
        }
    }

    public static Image ByteArrayToImage(byte[] fileBytes)
    {
        using (var stream = new MemoryStream(fileBytes))
        {
            return Image.FromStream(stream);
        }
    }
11
Sergey Malyutin

ところで、System.Drawing.dllへの参照も追加する必要があります。System.Drawingを使用して追加するだけでは不十分です。

2
lznt