java根据InputStream 流来真实判断图片格式
java如下,这里建议不要关闭流,要不然你其他地方获取不到了
/**
* 根据文件流判断图片类型
* @param fis
* @return jpg/png/gif/bmp
*/
public static String getPicType(InputStream is) {
//读取文件的前几个字节来判断图片格式
byte[] b = new byte[4];
try {
is.read(b, 0, b.length);
String type = HexUtil.byteToHexStr(b).toUpperCase();
if (type.contains("FFD8FF")) {
return "jpg";
} else if (type.contains("89504E47")) {
return "png";
} else if (type.contains("47494638")) {
return "gif";
} else if (type.contains("424D")) {
return "bmp";
} else {
return "unknown";
}
} catch (IOException e) {
e.printStackTrace();
}finally{
if(is != null){
try {
is.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return null;
}
java根据InputStream 流来真实判断图片格式相关推荐
- 通过文件头标识判断图片格式
通过文件头标识判断图片格式 用Delphi从内存流中通过文件头标识判断图片格式 文件头标识大全: http://www.garykessler.net/library/file_sigs.html h ...
- 基于asp.net + easyui框架,js实现上传图片之前判断图片格式,同时实现预览,兼容各种浏览器+下载...
2019独角兽企业重金招聘Python工程师标准>>> 最近在做图片上传的一个前台页面,上传图片功能虽然很简单,但是需要我们学习的地方很多.在上传图片之前验证图片的格式,并同时实现预 ...
- python图片保存jpg、show变成bmp_Python 实现判断图片格式并转换,将转换的图像存到生成的文件夹中...
Python 实现判断图片格式并转换,将转换的图像存到生成的文件夹中 我就废话不多说了,直接上代码吧! import Image from datetime import datetime impor ...
- java 判断图片格式_Java判断上传图片格式的实例代码
先给大家介绍下java判断上传图片格式. 由于客户上传图片将png的图片的后缀名改为jpg,所以通过后缀名判断不行,用下面这个方法可以 //判断是否是JPG格式 log.info("-1-- ...
- Java.SpringBoot InputStream流复制.
本文档产生场景. 在项目中,由于需要一个服务做为文件中转,先定义这个中转服务为C.C服务需要将内部文件服务器(这里定义为A)的文件转移到新的文件服务器(定义为B中).由于编程经验不足,在C中直接将A的 ...
- 文件头标识判断图片格式
同图片的文件头标志: 图片的格式很多,一个图片文件的后缀名并不能说明这个图片的真正格式什么,那么如何获取图片的格式呢?我想到了几个简单但有效的方法,那就是读取图片文件的文件头标识.我们知道各种格式的图 ...
- java wmf 转 svg_java wmf转svg图片格式最好的方法wmfToSvg
javawmf转svg图片格式最好的方法 第一种方法 这个方法兼容性比较好public static void wmfToSvg(String src, String dest) { boolean ...
- 通过文件头判断图片格式
有些情况下,图片的后缀并不能真实的反应图片的格式,通过16进制能准确的判断出图片的真实格式. 事实上,所有的文件都是以二进制的形式进行存储的,本质上没有差别.在每一个文件(包括图片,视频或其他的非AS ...
- js浏览上传图片,判断图片格式
效果演示; 上传文档提示你: html页面 <input type="file" class="file" name="activity_pic ...
最新文章
- IT项目管理入门知识
- WPF加载程序集中字符串资源
- python从入门到精通书-Python从入门到精通(资源汇总)
- 大数据精准营销:买水培栀子花该推送啥
- java mysql 清空表_MySQL 删除数据表
- POJ3614防晒霜 这个贪心有点东西(贪心+优先队列)
- linux setsockopt详解
- 一年Java经验应该会些什么
- 为什么5G标准制定,非得“你死我活”?
- python游戏按键无效_瞬速掌握Python系统管理-调试和分析脚本1-debugging
- 机器学习基础(三十八) —— 从几率到逻辑斯函数
- 中子穿墙问题的MonteCarlo求解方法
- Macbook使用技巧,分享必备
- freeswitch添加tls加密
- Linux 如何从网上下载文件
- Linux日志管理工具 journalctl
- js自己总结的小东西(打印出来方便学习)
- java程序的运行结果依赖操作系统吗_SunJava程序员认证考试试题
- 阿里云视频点播一站式解决解决方案怎么样?
- Hdu2184汉诺塔VIII
热门文章
- Arduino简易RFID门禁
- DRM架构介绍(一)
- 学习笔记:51单片机(STC89C52)如何定时10ms
- 非线性最小二乘, BA(Bundle Adjustment)
- Vue - 使用qrcodejs2生成二维码
- 博优商业管理系统ASA数据库“File is shorter than expected -- transaction rolled back”错误修复...
- linux进程调度策略和优先,linux进程调度之FIFO和RR调度策略
- 鸿蒙os2.0发布直播,2021华为鸿蒙操作系统发布会及华为全场景新品发布会时间 发布会直播入口...
- 【论文解读系列】NER方向:FLAT (ACL 2020)
- 频谱仪界面(频谱图)各种参数