C# 提取content.img文件

C# 提取content.img文件,c#,wpf,binaryfiles,memorystream,C#,Wpf,Binaryfiles,Memorystream,我正在做一个项目,我们必须从.img文件中提取信息。已知的是,.img文件包含512x512像素的图像,每个像素的大小为short类型的2位。 我们必须从文件中提取图像。问题是,如何使用C#读取该文件?我当前的二进制读取行是: byte[]bytes=System.IO.File.ReadAllBytes(“C:\temp\Jonatan\test23.img”) 谢谢你的帮助 根据像素数据的实际格式,从字节数组创建位图可能非常简单: var width = 512; var height =

我正在做一个项目,我们必须从
.img
文件中提取信息。已知的是,
.img
文件包含512x512像素的图像,每个像素的大小为
short
类型的2位。 我们必须从文件中提取图像。问题是,如何使用
C#
读取该文件?我当前的二进制读取行是:

byte[]bytes=System.IO.File.ReadAllBytes(“C:\temp\Jonatan\test23.img”)


谢谢你的帮助

根据像素数据的实际格式,从字节数组创建位图可能非常简单:

var width = 512;
var height = 512;
var stride = width * 2;

var bitmap = BitmapSource.Create(
    width, height, 96, 96, PixelFormats.Gray16, null, bytes, stride);
现在您可能在XAML中有一个图像元素

<Image x:Name="image"/>

你做到了,你只是读了。现在你想用这些信息做什么?将其绘制到图像上并以其他格式显示或保存?然后你必须创建一个位图并指定像素颜色。是的,我想显示它。如何分配像素颜色?某些图像文件具有指示文件格式的颜色。文件的前几个字节是什么?是0和248的序列,看看是否匹配其中一种格式。如果不是的话,就很难说它到底是什么,以及像素是如何编码的。谁创建了那个文件?可能会问他们。
image.Source = bitmap;