android判断图片类型 判断文件是否为图片文件

发布时间:2017-03-15

来源:服务器之家

判断文件是否为图片,仅通过后缀名判断很不全面,如果把一个txt文件后缀改成gif都会被认为是图片,通过java可以判断文件本身是否为图片。

Java可以用下面代码实现判断。

private boolean isImage(File file)

{

boolean flag = false;

try

{

ImageInputStream is = ImageIO.createImageInputStream(file);

if(null == is)

{

return flag;

}

is.close();

flag = true;

} catch (Exception e)

{

//e.printStackTrace();

}

return flag;

}

调用:

public static void main(String[] args)

{

F f = new F();

File file = new File("D:/java_workspace/LRVODPortal/WebRoot/yishijie/images/lws.txt");

System.out.println(f.isImage(file));

}

注:android的SDK中并没有提供ImageInputStream和ImageIO方法。

在android中的实现方式有很多中,我们现在先暂时使用下面的两个方法实现:

一:用Drawable方法实现:

Drawable drawable = Drawable.createFromPath(path);

if(drawable == null){

Toast.makeText(this, "图片格式错误!", 0).show();

return;

}

原理:把路径path传进Drawable.createFromPath()中,如果传进去的是正确图片路径,将会在本方法内部实现转换,并正确转换成Drawable资源,如果传进去的路径不是图片资源路径,将返回空(NULL),这样就可以根据返回值判断一个文件是否是图片,极大的方便了我们的开发。

二:用Bitmap方法实现:

Bitmap drawable2 = BitmapFactory.decodeFile(path);

if(drawable == null){

Toast.makeText(this, "图片格式错误!", 0).show();

return;

}

原理:把路径path传进BitmapFactory.decodeFile()中,如果传进去的是正确图片路径,将会在本方法内部实现转换,并正确转换成Bitmap资源,如果传进去的路径不是图片资源路径,将返回空(NULL),这样就可以根据返回值判断一个文件是否是图片,极大的方便了我们的开发。

android判断某文件下是否you_android判断图片类型 判断文件是否为图片文件 - 电脑常识 - 服务器之家...相关推荐

  1. python读取二进制文件_python读取二进制流 Python二进制方式读写文件 - 电脑常识 - 服务器之家...

    python读取二进制流 Python二进制方式读写文件 发布时间:2017-03-18 来源:服务器之家 这两天用Python解析ELF二进制文件,遇到了不少问题,总结整理如下,以便加深对Pytho ...

  2. 多个cpp文件生成so_visual studio生成so 生成的so文件 - 电脑故障 - 服务器之家

    visual studio生成so 生成的so文件 发布时间:2017-04-16 来源:服务器之家 1. 新建一个源码文件,里面包含了返回两个整数的和的函数 如果使用C语言,新建test.c文件,并 ...

  3. android 屏幕最小宽度_最小宽度360dp Android屏幕适配—被偷走的dp - 硬件设备 - 服务器之家...

    最小宽度360dp Android屏幕适配-被偷走的dp 发布时间:2017-05-11 来源:服务器之家 一.Android手机屏幕DPI DPI概念自行百度 Android手机按照不同DPI分为: ...

  4. linux搭建python运行环境_centos运行.py centos5.5下搭建python开发运行环境 - Linux - 服务器之家...

    centos运行.py centos5.5下搭建python开发运行环境 发布时间:2017-04-28 来源:服务器之家 我们知道ython可以在windows.linux.android运行了,但 ...

  5. idcardweb装入失败_vpk安装错误0xffffe Android Crash问题分析以及解决 - 硬件设备 - 服务器之家...

    vpk安装错误0xffffe Android Crash问题分析以及解决 发布时间:2017-04-10 来源:服务器之家 1.问题介绍 Crash问题,无论是java侧还是native侧,在日常测试 ...

  6. nginx 限制文件上传速度_nginx上传文件速度慢 Nginx上传文件全部缓存解决方案 - 硬件设备 - 服务器之家...

    nginx上传文件速度慢 Nginx上传文件全部缓存解决方案 发布时间:2017-03-09 来源:服务器之家 下面通过文字说明给大家详解Nginx上传文件全部缓存解决方案. 因为应用服务器(Jett ...

  7. java 图片类型判断

    方法一:根据图片url中的携带的ContentType信息判断图片的类型,如果图片被强制修改了图片的类型会有问题 /*** 根据url中ContentType判断问价格式* @param imgUrl ...

  8. Android中layout目录的作用,Android 开发中layout下的子文件夹

    Android 开发中layout下的子文件夹 发布时间:2020-10-25 11:42:36 来源:脚本之家 阅读:71 作者:厚土火焰山 如果一个项目内有很多个界面,那么在layout下会有太多 ...

  9. SDWebImage 判断图片类型

    SDWebImage 判断图片类型 判断文件类型方法基本有两种: 通过文件后缀来判断 (简单,快捷 但是不准确,之前 公司android 客户端禁止用户上传 GIF , 前端默认可以播放 GIF ,有 ...

最新文章

  1. 【青少年编程(第29周)】8月份的青少年编程组队学习结营了!
  2. SAP标准工单入库时产生成本差异-求解进行时
  3. CSS 小结笔记之清除浮动
  4. 幻侠修仙服务器维护,幻侠修仙常见问题_幻侠修仙问答_疑难解答_九游手机游戏...
  5. pytnon 学习day-1
  6. 关于如何理解链表结构体指针引用LinkNode * L的问题
  7. 【140815】VC编程技巧280例 电子书下载
  8. IOS网络编程常用的代码
  9. crt是什么意思 windows编程_软件工程师应该知道的关于Windows API、CRT和STL二三事...
  10. matlab海洋数值模拟,海洋数值模拟课程教学大纲.PDF
  11. 五年Java架构师深入剖析微服务架构设计理念与技术体系(值得一看!)
  12. getValue()方法 java_【Java 】实用方法
  13. UOS开机之后进入emergency mode“journalctl -xb”
  14. 微信在线填表小程序开发制作
  15. 老狼---《虎口脱险》
  16. Linux 缓存释放和管理
  17. PHP反射(ReflectionClass、ReflectionMethod)
  18. 解决页面可以左右滑动但无法上下滑动(有坑))
  19. Watchdog.sys是什么,Watchdog.sys蓝屏如何解决?
  20. 专家名人谈编程的作用

热门文章

  1. Mac使用brew安装Redis
  2. 怪物猎人世界pc服务器在哪个文件夹,怪物猎人世界存档位置在哪 怪物猎人世界冰原存档位置一览...
  3. 数智学习|《企业数字化转型白皮书(2021)》解读
  4. Excel中的空单元格怎么批量删除
  5. mysql 字符串转时间
  6. 利用jQuery实现表单里的增加、删除和修改
  7. 数字人民币亮相冬奥会,央行数字货币如何开户
  8. BM3D的学习与Matlab实现
  9. 《牛津字典精华总结》- 初阶系列 - 字母 - E
  10. 《山海经——海外经》