base64格式的JPEG图像

时间:2016-08-05 07:46:58

标签: image base64 jpeg

我有一个相机,它向我发送一个带有一些标签的xml文件,包括一个代表base64格式图像的标签。图像为JPEG格式。

由于某种原因,代表图像的标签并不总是具有相同的名称(对于相机的问题)

因此,为了确定地检测包含图像的标签是正确的,我现在必须做一件事:

base64格式的JPEG图像始终以/ 9j /?

开头

示例:

data:image/jpeg;base64,-->/9j/<--4RYQRXhpZgAATU0AKgAAAAgABwESAAMAAAABAAEAAAEaAAUAAAABAAAAYgEbAAUAAAABAAAAagEoAAMAAAABAAIAAAExAAIAAAAgAAAAcgEyAAIAAAAUAAAAkodpAAQAAAABAAAAqAAAANQACvyAAAAnEAAK/IAAACcQQWRvYmUgUGhvdG9zaG9wIENTNiAoTWFjaW50b3NoKQAyMDE2OjA4OjA1IDA5OjQ1OjA4AAAAAAOgAQADAAAAAf//AACgAgAEAAAAAQAAAPGgAwAEAAAAAQAAAFkAAAAAAAAABgEDAAMAAAABAAYAAAEaAAUAAAABAAABIgEbAA....

1 个答案:

答案 0 :(得分:4)

Jpeg文件格式(与许多其他格式一样)可以通过幻数识别。对于JPEG,幻数为ff d8 ff,偏移量为0。如果您将其编码为Base64,您将始终获得/9j/

附加说明:由于Base64将3个数据字节组转换为4个字节(ASCII),因此这适用于长度和偏移量为3个字节的任何幻数。如果幻数的长度不是 3的倍数,则最后一组4个Base-64编码的字符将根据紧跟幻数后的数据而改变。

https://en.wikipedia.org/wiki/JPEG

https://en.wikipedia.org/wiki/List_of_file_signatures