C# 如何从image获取字节数组
时间: 2023-10-10 08:05:13 浏览: 45
可以使用以下代码将 Image 对象转换为字节数组:
```csharp
byte[] byteArray;
using (MemoryStream stream = new MemoryStream())
{
image.Save(stream, System.Drawing.Imaging.ImageFormat.Jpeg); // 可以根据需要替换为其他格式
byteArray = stream.ToArray();
}
```
其中,`Save` 方法将 Image 对象保存到一个流中,然后使用 `ToArray` 方法将流中的数据转换为字节数组。
相关问题
C# 从image对象获取字节数组
你可以使用Image类的Save方法将图像保存到内存流中,然后使用MemoryStream类的ToArray方法将内存流转换为字节数组。以下是示例代码:
```csharp
using System.IO;
// 从Image对象获取字节数组
public byte[] GetByteArrayFromImage(Image image)
{
using (MemoryStream ms = new MemoryStream())
{
image.Save(ms, System.Drawing.Imaging.ImageFormat.Png);
return ms.ToArray();
}
}
```
在这个示例中,我们将图像保存为PNG格式,并且使用了using语句来确保内存流被正确地释放。你可以根据需要更改图像的格式。
C# 将bitmap转换成字节数组
好的,可以使用C#中的Bitmap类和MemoryStream类来实现这个过程。下面是一个示例代码:
```
Bitmap bitmap = new Bitmap("path/to/bitmap.png"); // 读取Bitmap文件
MemoryStream stream = new MemoryStream();
bitmap.Save(stream, ImageFormat.Png); // 将Bitmap保存成PNG格式的字节数组
byte[] byteArray = stream.ToArray(); // 获取字节数组数据
stream.Close(); // 关闭流
```
这个代码片段将读取一个Bitmap文件,将其保存成PNG格式的字节数组,并将结果存储在byteArray变量中。注意,这个过程可能会消耗一些内存,因此需要根据实际情况进行优化。