【发布时间】:2018-04-18 15:36:56
【问题描述】:
我有这样一个字符串:
string x = 0x424D3630090000000000360010028000000C00100200011111111111333333333000000C40E0000C40E000000088888888BBBBCC262281FF231F7EFF251D81FF....."
我被告知要将此字符串转换为 JPEG 图像,但我不确定此字符串的实际数据类型,也不知道如何将其转换为 JPEG。你能给我一些关于这方面的建议吗?提前致谢。
编辑:
我像这样将字符串转换为字节数组:
byte[] bytes = Convert.FromBase64String("0x424D363009..");
我得到了这个例外:
Base-64 字符数组或字符串的长度无效。
【问题讨论】:
-
将其转换为一组字节,然后您就可以“在 C# 中将字节转换为 jpeg”,其中 Stack Overflow 上有很多问题和答案。
-
对c#不太熟悉,但是,这好像是十六进制字符串,所以先了解如何将十六进制字符串转换为字节数组,然后将字节数组转换为图像
-
查看前两个十六进制值 - 0x42 0x4D - 我猜该字符串是一个 BitMap 文件 - 在转换为字节数组后应该给出一个起点。
-
它不是一个 base 64 字符串 - 每对字符代表一个 8 位值 - 所以你的数组应该是 - 0x42, 0x4D, 0x36, 0x30 .....所以你可能需要手动转换每一对字符。查看您的字符串,我认为那里有错误,因为我希望 00,00,00,28 跟随 36 - 另请参阅:asecuritysite.com/forensics/bmp?file=activated.bmp
标签: c# image binary file-conversion