2023-02-24 androd java 校验获取的jpg(jpeg)图片数据是否是有效的

文章介绍了JPEG图像格式的基本特征,包括文件头的FFD8标识,JFIF(JPEG文件交换格式)以及文件尾的D9标记。同时,提供了Android应用程序中用于校验JPEG图片数据的代码示例,该代码检查文件头和尾的特定字节序列来确认图片格式。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、JPEG的全称是JointPhotographicExpertsGroup(联合图像专家小组),它是一种常用的图像存储格式。

二、一张jpg格式图片十六进制查看如下:

一、文件头
    JPEG文件的开始2个字节都是FF D8这是JPEG协议规定的

二、JFIF是JPEG File Interchange Forma的缩写,即JPEG文件交换格式。

三、文件尾
    D9 一个字节

 

三、android app 里面获取到jpg图片数据加以校验代码

    public boolean is_image_jpeg(byte[] b ,int len)
    {
        if((b[0] == (byte)0xFF) && (b[1] == (byte)0xD8) && (b[2] == (byte)0xFF)   //head  255  216  255  74  70  73  70  255  217
                && (b[6] == 0x4A) && (b[7] == 0x46) && (b[8] == 0x49) && (b[9] == 0x46)//ASCII "JFIF" JFIF是JPEG File Interchange Forma
                && (b[len -2] == (byte)0xFF) && (b[len -1] == (byte)0xD9)) //end
              return true;
        else
              return false;
    }

四、参考文章

JPEG图像格式解析_jpeg格式解析_linux_dafei的博客-CSDN博客

https://www.cnblogs.com/liangzige/p/15172324.html

JPG文件格式分析_wx63b644a53b596的技术博客_51CTO博客

jpeg图片格式详解_jpeg格式_460833359的博客-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值