Java通过文件头获取文件类型
来源:互联网 发布:10nba总决赛数据 编辑:程序博客网 时间:2024/06/05 15:37
public class FileCheckTypeUtil { private static Logger logger = LogManager.getLogger(FileCheckTypeUtil.class); static Map<String,String> map = null; static { map =new HashMap<>(); map.put("FFD8FF","jpg"); map.put("89504E","png"); map.put("474946","gif"); map.put("524946","webp"); map.put("000001","ico"); map.put("424D36","bmp"); map.put("00000A","tga"); map.put("49492A","tif"); } private static String bytesToHexString(byte[] src) { StringBuilder stringBuilder = new StringBuilder(); if (src == null || src.length <= 0) { return null; } for (int i = 0; i < src.length; i++) { int v = src[i] & 0xFF; String hv = Integer.toHexString(v); if (hv.length() < 2) { stringBuilder.append(0); } stringBuilder.append(hv); } return stringBuilder.toString(); } private static String checkType(String code){ return map.get(code); } /** * 获得图片后缀 * @param path * @return */ public static String getType(String path){ String type =""; FileInputStream fileInputStream =null; try { fileInputStream = new FileInputStream(path); byte[] b = new byte[3]; fileInputStream.read(b, 0, b.length); String code = bytesToHexString(b); code = code.toUpperCase(); type = checkType(code); }catch (Exception e){ logger.error("获取文件格式异常"); }finally { if(fileInputStream!=null){ try { fileInputStream.close(); } catch (IOException e) { e.printStackTrace(); } } } return type; } public static void main(String[] args) throws IOException { String path = "E:\\redis64-2.8.9.zip"; System.out.println(getType(path)); }}
文件类型需要提前穷举
阅读全文
0 0
- Java通过文件头获取文件类型
- java通过文件头内容判断文件类型
- java通过文件头内容判断文件类型
- java通过文件头内容判断文件类型
- java通过文件头内容判断文件类型
- java通过文件头内容判断文件类型
- Java根据文件头获取文件类型
- Java依据文件头获取文件类型
- Java依据文件头获取文件类型
- Android中Java根据文件头获取文件类型
- Android中Java根据文件头获取文件类型
- python3通过文件头判断文件类型
- java 根据头文件码判断文件类型
- Java根据文件头判断文件类型
- Java根据文件头判断文件类型
- java:根据文件头来判断文件类型
- c++ builder 通过文件流获取文件类型
- .net 文件上传,通过文件头确认文件类型
- C++中计算程序运行时间
- 积分
- 【Hopcroft-Karp && 二分图的最大匹配数 && 有向图】HDU
- 【我的Java笔记】常用类_StringBuffer
- linux jdk安装
- Java通过文件头获取文件类型
- Android仿微信语音录制和播放
- 面试官让你现场写一个string类,该写哪个版本的?
- Android Studio Gradle实践之多渠道自动化打包
- python基础(1)
- vue router 导航钩子(导航守卫)
- 学习笔记MFC_1
- 51nod 1600 Simple KMP 后缀自动机+树链剖分+线段树
- openvpn安装