如何从数据库加载的字节数据中呈现HTML图像?
我正在从数据库中检索数据作为字节数组。我需要将其转换为png格式。 这可能吗?
下面显示的是字节数组。
Byte[] imageArray = new byte[0];
MyData = (Byte[])dt.Tables[0].Rows[3]["img"];
答案 0 :(得分:0)
您可以使用转换功能来完成。请参阅下面的代码......
Byte[] imageArray = new byte[0];
MyData = (Byte[])dt.Tables[0].Rows[3]["img"];
if (imageArray!= null && imageArray.Length > 0)
{
string img = Convert.ToBase64String(imageArray, 0, imageArray.Length);
pictureBox1.ImageUrl = "data:image/png;base64," + img;
}
答案 1 :(得分:0)
您可以尝试以下功能
public static Image ByteArrayToImagebyMemoryStream(byte[] imageByte)
{
MemoryStream ms = new MemoryStream(imageByte);
Image image = Image.FromStream(ms);
return image;
}
答案 2 :(得分:0)
您可以尝试以下功能:
System.Drawing.Image newImage;
string strFileName = GetTempFolderName() + "yourfilename.gif";
if (byteArrayIn != null)
{
using (MemoryStream stream = new MemoryStream(byteArrayIn))
{
newImage = System.Drawing.Image.FromStream(stream);
newImage.Save(strFileName);
img.Attributes.Add("src", strFileName);
}
}
else
{
Response.Write("No image data found!");
}
答案 3 :(得分:0)
希望这个答案可以帮到你
public byte[] imageToByteArray(System.Drawing.Image imageIn)
{
MemoryStream ms = new MemoryStream();
imageIn.Save(ms,System.Drawing.Imaging.ImageFormat.Gif);
return ms.ToArray();
}
public Image byteArrayToImage(byte[] byteArrayIn)
{
MemoryStream ms = new MemoryStream(byteArrayIn);
Image returnImage = Image.FromStream(ms);
return returnImage; }