java 判断常见图片的格式(源码)

it2025-02-17  4

话不多说上源码

public String getPicType(String srcPath) { //读取文件的前几个字节 文件头 来判断图片格式 byte[] b = new byte[4]; StringBuilder sb = new StringBuilder(); FileInputStream fis = null; try { fis = new FileInputStream(srcPath); fis.read(b, 0, b.length); } catch (IOException e) { e.printStackTrace(); } for (int i = 0; i < b.length; i++) { sb.append(String.format("%02x", b[i])); } try { String type = sb.toString().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 if (type.contains("52494646")) { return "webp"; } else if (type.contains("49492A00")) { return "tif"; } else { return null; } } finally { if (fis != null) { try { fis.close(); } catch (IOException e) { e.printStackTrace(); } } } }
最新回复(0)