java图像上传中如何判断是不是是jpg格式

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java图像上传中如何判断是不是是jpg格式相关的知识,希望对你有一定的参考价值。

    通过文件的二进制流来判断一张图片是否为jpg格式的图片。

    原理很简单:所有JPG/JPEG格式的图片都是以十六进制的'FF D8'作为文件开始,'FF
    D9'作为文件结束标志。FF等为16进制数据,占文件的1 byte。如果没有带相机信息的jpg图片,第7, 8, 9,
    10这4位上分别是字符'JFIF'的16进制表示,用UltraEdit打开可以直接看到;如果带有相机信息,有可能与不带信息的不同,也可能相同,不
    同的话在那4位上为'Exif'字符的16进制表示,但是他们都是以FF D8开始,FF D9结束。

参考技术A javascript中:
<script type="text/javascript">
function check()
var val=document.getElementById("xxx").value;
if(!/^.*?\.(gif|png|jpg|jpeg|bmp|JPG)$/.test(val))

alert("图片格式不正确,请选择jpg,gif格式");
document.getElementById("loadPhoto").select();
document.execCommand('Delete');
return false;


</script>
参考技术B FormFile formfile;
String ext=formfile.getFileName().substring(formfile.getFileName().lastIndexOf('.')+1).toLowerCase();
if("jpg".equals(ext)) System.out.println("jpg格式图片");
参考技术C 截取字符串看看是否是.jpg结尾 参考技术D 可以看下struts2中上传文件的拦截器

以上是关于java图像上传中如何判断是不是是jpg格式的主要内容,如果未能解决你的问题,请参考以下文章

如何在上传时仅旋转 jpg 和 jpeg?

java 如何进行 bmp格式的图片转换成jpg格式

[图像]判断图片是PNG还是JPG格式

如何识别文件是不是为带有 Java/JavaFX 的图像(.jpg、.png ...)? [复制]

上传 JPG 图像以解析服务器失败

如何实现从jpg格式到shp图像格式的转换?