16进制的位图数据转换成Jpg图片 重发一帖解决思路
16进制的位图数据转换成Jpg图片 重发一帖
昨天晚上发了一个帖子,今天得知帖子中的字符串是一串16进制位图数据,
想问一下首先如何将16进制位图数据转换成JPG格式?
http://bbs.****.net/topics/390903035
------解决思路----------------------
如果你确定是bmp位图,你要先转位图,位图再转jpg,而不是把数据直接转jpg
------解决思路----------------------
字节数组转图片流,图片流转bmp类型,然后saveAs成JPG
------解决思路----------------------
文件头有SBMP2.0的标记,可能是一种不常见格式的图像文件。
建议你联系图像提供商,获取SBMP2.0的格式定义。这比你自己做猜谜游戏有效多了。
------解决思路----------------------
// 那个字符串太长上传不了,你自己写一个s吧,我把我测试的字符串写在博客里,你可以拷贝过去测试一下
//连接地址:http://blog.****.net/chen504390172/article/details/39992413
try
{
byte[] MyData = new byte[s.Length / 2];
for (int i = 0; i < s.Length / 2; i++)
{
MyData[i] = Convert.ToByte(s.Substring(i * 2, 2), 16);
}
FileStream fs = new FileStream(@"c:\test.jpg", FileMode.OpenOrCreate, FileAccess.Write);
fs.Write(MyData, 0, MyData.Count());
fs.Close();
MessageBox.Show("转换成功!");
}
catch (Exception ex)
{
MessageBox.Show("转换成功!"+ex.ToString());
}
昨天晚上发了一个帖子,今天得知帖子中的字符串是一串16进制位图数据,
想问一下首先如何将16进制位图数据转换成JPG格式?
http://bbs.****.net/topics/390903035
------解决思路----------------------
如果你确定是bmp位图,你要先转位图,位图再转jpg,而不是把数据直接转jpg
------解决思路----------------------
字节数组转图片流,图片流转bmp类型,然后saveAs成JPG
------解决思路----------------------
文件头有SBMP2.0的标记,可能是一种不常见格式的图像文件。
建议你联系图像提供商,获取SBMP2.0的格式定义。这比你自己做猜谜游戏有效多了。
------解决思路----------------------
// 那个字符串太长上传不了,你自己写一个s吧,我把我测试的字符串写在博客里,你可以拷贝过去测试一下
//连接地址:http://blog.****.net/chen504390172/article/details/39992413
try
{
byte[] MyData = new byte[s.Length / 2];
for (int i = 0; i < s.Length / 2; i++)
{
MyData[i] = Convert.ToByte(s.Substring(i * 2, 2), 16);
}
FileStream fs = new FileStream(@"c:\test.jpg", FileMode.OpenOrCreate, FileAccess.Write);
fs.Write(MyData, 0, MyData.Count());
fs.Close();
MessageBox.Show("转换成功!");
}
catch (Exception ex)
{
MessageBox.Show("转换成功!"+ex.ToString());
}