java如何判断文件是否为图片
发布网友
发布时间:2022-04-26 08:35
我来回答
共5个回答
热心网友
时间:2022-06-06 14:49
展开3全部
java中提供了ImageInputStream类来对文件是否为图片进行判断,示例如下:
/**
* 判断文件是否为图片<br>
* <br>
* @param pInput 文件名<br>
* @param pImgeFlag 判断具体文件类型<br>
* @return 检查后的结果<br>
* @throws Exception
*/
public static boolean isPicture(String pInput,
String pImgeFlag) throws Exception{
// 文件名称为空的场合
if(Check.isNull(pInput)){
// 返回不和合法
return false;
}
// 获得文件后缀名
String tmpName = pInput.substring(pInput.lastIndexOf(".") + 1,
pInput.length());
// 声明图片后缀名数组
String imgeArray [][] = {
{"bmp", "0"}, {"dib", "1"}, {"gif", "2"},
{"jfif", "3"}, {"jpe", "4"}, {"jpeg", "5"},
{"jpg", "6"}, {"png", "7"} ,{"tif", "8"},
{"tiff", "9"}, {"ico", "10"}
};
// 遍历名称数组
for(int i = 0; i<imgeArray.length;i++){
// 判断单个类型文件的场合
if(! Check.isNull(pImgeFlag)
&& imgeArray [i][0].equals(tmpName.toLowerCase())
&& imgeArray [i][1].equals(pImgeFlag)){
return true;
}
// 判断符合全部类型的场合
if(Check.isNull(pImgeFlag)
&& imgeArray [i][0].equals(tmpName.toLowerCase())){
return true;
}
}
return false;
}
热心网友
时间:2022-06-06 14:49
把文件转换下成图片,如果转换成功,那就是图片,失败的话,那就不是呗
热心网友
时间:2022-06-06 14:50
用方法截取.jpg或者.gif格式的,然后判断嘛。File file = new File(the new file path);
FindFolderAllFiles(CString csFolderName)
{
CFileFind f;
BOOL bFind=f.FindFile(csFolderName+ "\\*.* ");
while(bFind)
{
bFind = f.FindNextFile();
if(f.IsDots()) continue;
if(f.IsDirectory())
{ FindFolderAllFiles(csFolderName+ "\\ "+f.GetFileName()); }
//Get File Name
TRACE(_T( "%s\r\n "),f.GetFileName());//f.GetFileName..
}
}
热心网友
时间:2022-06-06 14:50
可是判断文件名的后缀来区分
热心网友
时间:2022-06-06 14:51
public static boolean isPicture(InputStream input) {
if (input == null) {
return true;
}
BufferedImage bi = null;
try {
bi = ImageIO.read(input);
} catch (IOException e) {
FileLog.errorLog(e, "文件上传失败,原因:");
}
return (bi != null && bi.getHeight() > 0 && bi.getWidth() > 0);
}