判断文件是否为图片,仅通过后缀名判断很不全面,如果把一个txt文件后缀改成gif都会被认为是图片,通过java可以判断文件本身是否为图片,可以防止用木马病毒伪装成图片。图片上传时,同时要限制上传文件大小,以防对服务器可用性造成冲击。
package com.tx.img;
import java.io.File;
import java.io.IOException;
import java.util.Iterator;
import javax.imageio.ImageIO;
import javax.imageio.ImageReader;
import javax.imageio.stream.ImageInputStream;
public class IsImageFile {
public static void main(String[] args) throws IOException {
File file=new File("D:\\java_work\\img\\Firefox.png");
System.out.println(isImageFile(file));
}
public static boolean isImageFile(File file) {
ImageInputStream iis = null;
try {
iis = ImageIO.createImageInputStream(file); // resFile为需被
Iterator<ImageReader> iter = ImageIO.getImageReaders(iis);
if (!iter.hasNext()) {// 文件不是图片
System.out.println("此文件不为图片文件");
return false;
}
iis.close();
} catch (IOException e) {
e.printStackTrace();
}
return true;
}
}
相关推荐
java文件的工具类,封装了常用的操作,尤其针对文件的实际类型,通过获取文件的byte,来查看文件起始字节的魔数值,通过魔数值来判断文件的类型,工具集合了常用的文件类型对应的魔数,也封装了文件类型的判断方法
下面将详细解释如何使用`io.open`以及如何创建一个自定义的`file_exists`函数来判断文件或目录是否存在。 一、使用`io.open` `io.open`函数是Lua中的标准库函数,用于打开一个文件以便读写。它接受两个参数:文件...
这个方法虽然简单,但已经可以有效地过滤掉大部分非图片文件。当然,为了覆盖更多的图片格式,我们需要扩展检查逻辑,增加更多图片类型的二进制头识别。例如,JPEG文件的文件头是"\xFF\xD8",而GIF文件的文件头是...
在实际编程中,应根据项目需求和所使用的库选择合适的判断文件存在的方法。同时,考虑到性能和代码可读性,建议选择最简洁且适合上下文的方法。在学习和使用这些方法时,可以参考压缩包中的文件,结合代码示例进行...
BITMAPFILEHEADER的前两个字节是'BM',表示这是一个Windows Bitmap文件。我们只需检查这两个字节就可以识别BMP文件。 JPEG(Joint Photographic Experts Group)图片文件的标识更为复杂。JPEG文件通常以'FF D8'开始...
验证文件类型,看看所选文件是不是图片: 代码如下: //文件类型: protected bool IsAllowableFileType(string FileName) { //从web.config读取判断文件类型限制 string stringstrFileTypeLimit; string
4. **`getFormatName` 方法**:这是 `ImageReader` 接口中的一个方法,用于返回图像的格式名称。 #### 五、总结 通过上述代码示例,我们可以有效地识别出一个图像文件的具体格式。这种方法不仅简单高效,而且充分...
在 java 中,判断文件类型可以使用 `FileTypeMap` 类,该类提供了一个 getDefaultFileTypeMap() 方法,可以获取系统默认的文件类型映射。然后,我们可以使用 `getContentType()` 方法来获取文件的类型。 以下是一个...
JS上传文件判断文件格式 GIF JPG PNG
综上所述,PHP提供了多种方式来判断文件是否为图片,开发者可以根据实际需求和环境选择合适的方法。在处理用户上传文件时,通常建议结合多种方法进行验证,以提高安全性。同时,确保在处理文件时进行适当的错误处理...
根据头信息判断文件类型是计算机科学中的一个常见技术,它基于这样一个事实:大多数文件格式在开始部分都会包含一些特定的字节序列,这些序列被称为“魔术数字”或“文件签名”,用于标识文件的类型。这种方法在很多...
本资料“利用PHP判断文件是否为图片的方法总结共7页.pdf”可能详细介绍了多种方法,虽然具体内容无法直接展示,但根据标题和标签,我可以提供一些基本的判断策略。 1. **检查文件扩展名**: 这是最直观的方法,...
有些软件通过改变文件的扩展名隐藏文件的真实类型。例如,有些游戏的音乐和动画其实是标准的MID和AVI文件...现在编写一个程序,使它从一个配置文件中获得字符串与文件类型的对应表,然后判断用户指定的文件的真实类型!
//判断是否是图片 function isImg(){ var f=$("#imgFile").val(); if(f==""){ alert("请上传图片");return false; }else { if(!/\.(gif|jpg|jpeg|png|GIF|JPG|PNG)$/.test(f)) { alert("图片类型必须是.gif,...
**一、判断文件大小** 在C#中,我们可以在文件上传过程中直接获取文件大小。假设`HttpPostedFileBase file`是代表上传文件的对象,可以使用以下代码: ```csharp long fileSize = file.ContentLength; if (file...
"istextorbinary"是一个非常实用的Node.js模块,它允许我们高效地检测一个文件究竟是文本还是二进制。这个模块在处理大量未知类型文件时特别有用,可以避免因错误的假设导致的数据处理错误。 `istextorbinary`库的...
很多时候木马程序会伪装成其他格式的文件上传到网站.../// 判断文件是否为图片 /// /// 文件的完整路径 /// 返回结果 public Boolean IsImage(string path) { try { System.Drawing.Image img = System.Drawing.Imag
对应的描述看本人博文《ExtJS4 上传文件类型和大小的判断方法(实例) 》:http://blog.csdn.net/biboheart/article/details/10579175 在这里不具体描述了。看题也大概可以知道这些代码实现了什么应用。
哈希函数可以将图片转换为一个固定长度的数字摘要,如果两幅图片内容相同,它们的哈希值也应该一致。常用的哈希算法有平均颜色哈希(Average Color Hash)、差分像素直方图(Difference Pixel Histogram)、DCT哈希...