cgm 转jpg java_获取图片,音频,视频,压缩包文件类型的工具类
1.[代码][Java]代码
/*
* Copyright (C) 2013 Simple Explorer
*
* This program is free software; you can redistribute it and/or
* modify it under the terms of the GNU General Public License
* as published by the Free Software Foundation; either version 2
* of the License, or (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program; if not, write to the Free Software
* Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
* MA 02110-1301, USA.
*/
package com.dnielfe.manager.preview;
import android.webkit.MimeTypeMap;
import com.dnielfe.manager.R;
import com.dnielfe.manager.utils.SimpleUtils;
import java.io.File;
import java.util.HashMap;
import java.util.Locale;
import java.util.regex.Pattern;
public final class MimeTypes {
public static final String ALL_MIME_TYPES = "*/*";
private static final HashMap EXT_ICONS = new HashMap<>();
private static final HashMap MIME_TYPES = new HashMap<>();
static {
// BINARY
EXT_ICONS.put("a", R.drawable.type_unknown);
EXT_ICONS.put("bin", R.drawable.type_unknown);
EXT_ICONS.put("class", R.drawable.type_unknown);
EXT_ICONS.put("com", R.drawable.type_unknown);
EXT_ICONS.put("dex", R.drawable.type_unknown);
EXT_ICONS.put("dump", R.drawable.type_unknown);
EXT_ICONS.put("exe", R.drawable.type_unknown);
EXT_ICONS.put("dat", R.drawable.type_unknown);
EXT_ICONS.put("dll", R.drawable.type_unknown);
EXT_ICONS.put("lib", R.drawable.type_unknown);
EXT_ICONS.put("o", R.drawable.type_unknown);
EXT_ICONS.put("obj", R.drawable.type_unknown);
EXT_ICONS.put("pyc", R.drawable.type_unknown);
EXT_ICONS.put("pyo", R.drawable.type_unknown);
EXT_ICONS.put("ser", R.drawable.type_unknown);
EXT_ICONS.put("swf", R.drawable.type_unknown);
EXT_ICONS.put("so", R.drawable.type_unknown);
// Shell
EXT_ICONS.put("bar", R.drawable.type_unknown);
EXT_ICONS.put("csh", R.drawable.type_unknown);
EXT_ICONS.put("ksh", R.drawable.type_unknown);
EXT_ICONS.put("sh", R.drawable.type_unknown);
// TEXT
EXT_ICONS.put("csv", R.drawable.type_note);
EXT_ICONS.put("diff", R.drawable.type_note);
EXT_ICONS.put("in", R.drawable.type_note);
EXT_ICONS.put("list", R.drawable.type_note);
EXT_ICONS.put("log", R.drawable.type_note);
EXT_ICONS.put("rc", R.drawable.type_note);
EXT_ICONS.put("text", R.drawable.type_note);
EXT_ICONS.put("txt", R.drawable.type_note);
EXT_ICONS.put("tsv", R.drawable.type_note);
// Properties
EXT_ICONS.put("properties", R.drawable.type_config);
EXT_ICONS.put("conf", R.drawable.type_config);
EXT_ICONS.put("config", R.drawable.type_config);
EXT_ICONS.put("prop", R.drawable.type_config);
// HTML
EXT_ICONS.put("htm", R.drawable.type_html);
EXT_ICONS.put("html", R.drawable.type_html);
EXT_ICONS.put("mhtml", R.drawable.type_html);
EXT_ICONS.put("xhtml", R.drawable.type_html);
// XML
EXT_ICONS.put("xml", R.drawable.type_xml);
EXT_ICONS.put("mxml", R.drawable.type_xml);
// DOCUMENT
EXT_ICONS.put("doc", R.drawable.type_note);
EXT_ICONS.put("docx", R.drawable.type_note);
EXT_ICONS.put("odp", R.drawable.type_note);
EXT_ICONS.put("odt", R.drawable.type_note);
EXT_ICONS.put("rtf", R.drawable.type_note);
EXT_ICONS.put("ods", R.drawable.type_note);
EXT_ICONS.put("xls", R.drawable.type_note);
EXT_ICONS.put("xlsx", R.drawable.type_note);
// Presentation
EXT_ICONS.put("ppt", R.drawable.type_note);
EXT_ICONS.put("pptx", R.drawable.type_note);
EXT_ICONS.put("pdf", R.drawable.type_pdf);
EXT_ICONS.put("fdf", R.drawable.type_pdf);
EXT_ICONS.put("ldwf", R.drawable.type_pdf);
// Package
EXT_ICONS.put("ace", R.drawable.type_package);
EXT_ICONS.put("bz", R.drawable.type_package);
EXT_ICONS.put("bz2", R.drawable.type_package);
EXT_ICONS.put("cab", R.drawable.type_package);
EXT_ICONS.put("cpio", R.drawable.type_package);
EXT_ICONS.put("gz", R.drawable.type_package);
EXT_ICONS.put("lha", R.drawable.type_package);
EXT_ICONS.put("lrf", R.drawable.type_package);
EXT_ICONS.put("lzma", R.drawable.type_package);
EXT_ICONS.put("rar", R.drawable.type_package);
EXT_ICONS.put("tar", R.drawable.type_package);
EXT_ICONS.put("tgz", R.drawable.type_package);
EXT_ICONS.put("xz", R.drawable.type_package);
EXT_ICONS.put("zip", R.drawable.type_package);
EXT_ICONS.put("Z", R.drawable.type_package);
EXT_ICONS.put("7z", R.drawable.type_package);
EXT_ICONS.put("rar", R.drawable.type_package);
EXT_ICONS.put("tar", R.drawable.type_package);
EXT_ICONS.put("jar", R.drawable.type_package);
// Image
EXT_ICONS.put("bmp", R.drawable.type_pic);
EXT_ICONS.put("cgm", R.drawable.type_pic);
EXT_ICONS.put("g3", R.drawable.type_pic);
EXT_ICONS.put("gif", R.drawable.type_pic);
EXT_ICONS.put("ief", R.drawable.type_pic);
EXT_ICONS.put("jpe", R.drawable.type_pic);
EXT_ICONS.put("jpeg", R.drawable.type_pic);
EXT_ICONS.put("jpg", R.drawable.type_pic);
EXT_ICONS.put("png", R.drawable.type_pic);
EXT_ICONS.put("btif", R.drawable.type_pic);
EXT_ICONS.put("svg", R.drawable.type_pic);
EXT_ICONS.put("svgz", R.drawable.type_pic);
EXT_ICONS.put("tif", R.drawable.type_pic);
EXT_ICONS.put("tiff", R.drawable.type_pic);
EXT_ICONS.put("psd", R.drawable.type_pic);
EXT_ICONS.put("dwg", R.drawable.type_pic);
EXT_ICONS.put("dxf", R.drawable.type_pic);
EXT_ICONS.put("fbs", R.drawable.type_pic);
EXT_ICONS.put("fpx", R.drawable.type_pic);
EXT_ICONS.put("fst", R.drawable.type_pic);
EXT_ICONS.put("mmr", R.drawable.type_pic);
EXT_ICONS.put("rlc", R.drawable.type_pic);
EXT_ICONS.put("mdi", R.drawable.type_pic);
EXT_ICONS.put("npx", R.drawable.type_pic);
EXT_ICONS.put("wbmp", R.drawable.type_pic);
EXT_ICONS.put("xif", R.drawable.type_pic);
EXT_ICONS.put("ras", R.drawable.type_pic);
EXT_ICONS.put("ico", R.drawable.type_pic);
EXT_ICONS.put("pcx", R.drawable.type_pic);
EXT_ICONS.put("pct", R.drawable.type_pic);
EXT_ICONS.put("pic", R.drawable.type_pic);
EXT_ICONS.put("xbm", R.drawable.type_pic);
EXT_ICONS.put("xwd", R.drawable.type_pic);
EXT_ICONS.put("bpg", R.drawable.type_pic);
// Audio
EXT_ICONS.put("aac", R.drawable.type_music);
EXT_ICONS.put("adp", R.drawable.type_music);
EXT_ICONS.put("aif", R.drawable.type_music);
EXT_ICONS.put("aifc", R.drawable.type_music);
EXT_ICONS.put("aiff", R.drawable.type_music);
EXT_ICONS.put("amr", R.drawable.type_music);
EXT_ICONS.put("ape", R.drawable.type_music);
EXT_ICONS.put("au", R.drawable.type_music);
EXT_ICONS.put("dts", R.drawable.type_music);
EXT_ICONS.put("eol", R.drawable.type_music);
EXT_ICONS.put("flac", R.drawable.type_music);
EXT_ICONS.put("kar", R.drawable.type_music);
EXT_ICONS.put("lvp", R.drawable.type_music);
EXT_ICONS.put("m2a", R.drawable.type_music);
EXT_ICONS.put("m3a", R.drawable.type_music);
EXT_ICONS.put("m3u", R.drawable.type_music);
EXT_ICONS.put("m4a", R.drawable.type_music);
EXT_ICONS.put("mid", R.drawable.type_music);
EXT_ICONS.put("mid", R.drawable.type_music);
EXT_ICONS.put("mka", R.drawable.type_music);
EXT_ICONS.put("mp2", R.drawable.type_music);
EXT_ICONS.put("mp3", R.drawable.type_music);
EXT_ICONS.put("mpga", R.drawable.type_music);
EXT_ICONS.put("oga", R.drawable.type_music);
EXT_ICONS.put("ogg", R.drawable.type_music);
EXT_ICONS.put("pya", R.drawable.type_music);
EXT_ICONS.put("ram", R.drawable.type_music);
EXT_ICONS.put("rmi", R.drawable.type_music);
EXT_ICONS.put("snd", R.drawable.type_music);
EXT_ICONS.put("spx", R.drawable.type_music);
EXT_ICONS.put("wav", R.drawable.type_music);
EXT_ICONS.put("wax", R.drawable.type_music);
EXT_ICONS.put("wma", R.drawable.type_music);
// Video
EXT_ICONS.put("3gp", R.drawable.type_video);
EXT_ICONS.put("3gpp", R.drawable.type_video);
EXT_ICONS.put("3g2", R.drawable.type_video);
EXT_ICONS.put("3gpp2", R.drawable.type_video);
EXT_ICONS.put("h261", R.drawable.type_video);
EXT_ICONS.put("h263", R.drawable.type_video);
EXT_ICONS.put("h264", R.drawable.type_video);
EXT_ICONS.put("jpgv", R.drawable.type_video);
EXT_ICONS.put("jpgm", R.drawable.type_video);
EXT_ICONS.put("jpm", R.drawable.type_video);
EXT_ICONS.put("mj2", R.drawable.type_video);
EXT_ICONS.put("mp4", R.drawable.type_video);
EXT_ICONS.put("mp4v", R.drawable.type_video);
EXT_ICONS.put("mpg4", R.drawable.type_video);
EXT_ICONS.put("m1v", R.drawable.type_video);
EXT_ICONS.put("m2v", R.drawable.type_video);
EXT_ICONS.put("mpa", R.drawable.type_video);
EXT_ICONS.put("mpe", R.drawable.type_video);
EXT_ICONS.put("mpg", R.drawable.type_video);
EXT_ICONS.put("mpeg", R.drawable.type_video);
EXT_ICONS.put("ogv", R.drawable.type_video);
EXT_ICONS.put("mov", R.drawable.type_video);
EXT_ICONS.put("qt", R.drawable.type_video);
EXT_ICONS.put("fvt", R.drawable.type_video);
EXT_ICONS.put("m4u", R.drawable.type_video);
EXT_ICONS.put("pyv", R.drawable.type_video);
EXT_ICONS.put("viv", R.drawable.type_video);
EXT_ICONS.put("f4v", R.drawable.type_video);
EXT_ICONS.put("fli", R.drawable.type_video);
EXT_ICONS.put("flv", R.drawable.type_video);
EXT_ICONS.put("m4v", R.drawable.type_video);
EXT_ICONS.put("asf", R.drawable.type_video);
EXT_ICONS.put("asx", R.drawable.type_video);
EXT_ICONS.put("avi", R.drawable.type_video);
EXT_ICONS.put("wmv", R.drawable.type_video);
EXT_ICONS.put("wmx", R.drawable.type_video);
EXT_ICONS.put("mkv", R.drawable.type_video);
// Application
EXT_ICONS.put("apk", R.drawable.type_apk);
/*
* ================= MIME TYPES ====================
*/
MIME_TYPES.put("asm", "text/x-asm");
MIME_TYPES.put("def", "text/plain");
MIME_TYPES.put("in", "text/plain");
MIME_TYPES.put("rc", "text/plain");
MIME_TYPES.put("list", "text/plain");
MIME_TYPES.put("log", "text/plain");
MIME_TYPES.put("pl", "text/plain");
MIME_TYPES.put("prop", "text/plain");
MIME_TYPES.put("properties", "text/plain");
MIME_TYPES.put("rc", "text/plain");
MIME_TYPES.put("epub", "application/epub+zip");
MIME_TYPES.put("ibooks", "application/x-ibooks+zip");
MIME_TYPES.put("ifb", "text/calendar");
MIME_TYPES.put("eml", "message/rfc822");
MIME_TYPES.put("msg", "application/vnd.ms-outlook");
MIME_TYPES.put("ace", "application/x-ace-compressed");
MIME_TYPES.put("bz", "application/x-bzip");
MIME_TYPES.put("bz2", "application/x-bzip2");
MIME_TYPES.put("cab", "application/vnd.ms-cab-compressed");
MIME_TYPES.put("gz", "application/x-gzip");
MIME_TYPES.put("lrf", "application/octet-stream");
MIME_TYPES.put("jar", "application/java-archive");
MIME_TYPES.put("xz", "application/x-xz");
MIME_TYPES.put("Z", "application/x-compress");
MIME_TYPES.put("bat", "application/x-msdownload");
MIME_TYPES.put("ksh", "text/plain");
MIME_TYPES.put("sh", "application/x-sh");
MIME_TYPES.put("db", "application/octet-stream");
MIME_TYPES.put("db3", "application/octet-stream");
MIME_TYPES.put("otf", "x-font-otf");
MIME_TYPES.put("ttf", "x-font-ttf");
MIME_TYPES.put("psf", "x-font-linux-psf");
MIME_TYPES.put("cgm", "image/cgm");
MIME_TYPES.put("btif", "image/prs.btif");
MIME_TYPES.put("dwg", "image/vnd.dwg");
MIME_TYPES.put("dxf", "image/vnd.dxf");
MIME_TYPES.put("fbs", "image/vnd.fastbidsheet");
MIME_TYPES.put("fpx", "image/vnd.fpx");
MIME_TYPES.put("fst", "image/vnd.fst");
MIME_TYPES.put("mdi", "image/vnd.ms-mdi");
MIME_TYPES.put("npx", "image/vnd.net-fpx");
MIME_TYPES.put("xif", "image/vnd.xiff");
MIME_TYPES.put("pct", "image/x-pict");
MIME_TYPES.put("pic", "image/x-pict");
MIME_TYPES.put("adp", "audio/adpcm");
MIME_TYPES.put("au", "audio/basic");
MIME_TYPES.put("snd", "audio/basic");
MIME_TYPES.put("m2a", "audio/mpeg");
MIME_TYPES.put("m3a", "audio/mpeg");
MIME_TYPES.put("oga", "audio/ogg");
MIME_TYPES.put("spx", "audio/ogg");
MIME_TYPES.put("aac", "audio/x-aac");
MIME_TYPES.put("mka", "audio/x-matroska");
MIME_TYPES.put("jpgv", "video/jpeg");
MIME_TYPES.put("jpgm", "video/jpm");
MIME_TYPES.put("jpm", "video/jpm");
MIME_TYPES.put("mj2", "video/mj2");
MIME_TYPES.put("mjp2", "video/mj2");
MIME_TYPES.put("mpa", "video/mpeg");
MIME_TYPES.put("ogv", "video/ogg");
MIME_TYPES.put("flv", "video/x-flv");
MIME_TYPES.put("mkv", "video/x-matroska");
}
public static int getIconForExt(String ext) {
final Integer res = EXT_ICONS.get(ext);
return res == null ? 0 : res;
}
public static String getMimeType(File file) {
if (file.isDirectory()) {
return null;
}
String type = null;
final String extension = SimpleUtils.getExtension(file.getName());
if (extension != null && !extension.isEmpty()) {
final String extensionLowerCase = extension.toLowerCase(Locale
.getDefault());
final MimeTypeMap mime = MimeTypeMap.getSingleton();
type = mime.getMimeTypeFromExtension(extensionLowerCase);
if (type == null) {
type = MIME_TYPES.get(extensionLowerCase);
}
}
return type;
}
private static boolean mimeTypeMatch(String mime, String input) {
return Pattern.matches(mime.replace("*", ".*"), input);
}
public static boolean isPicture(File f) {
final String mime = getMimeType(f);
return mime != null && mimeTypeMatch("image/*", mime);
}
public static boolean isVideo(File f) {
final String mime = getMimeType(f);
return mime != null && mimeTypeMatch("video/*", mime);
}
}
cgm 转jpg java_获取图片,音频,视频,压缩包文件类型的工具类相关推荐
- CTF-MISC文件隐写总结(图片,音频,视频,压缩包等文件)
前置知识 file 命令根据文件头,识别文件类型,如果文件头前边有数据就识别不出来了 strings 输出文件中的可打印字符 可以发现一些提示信息或者特殊编码的信息 可以配合-o参数获取所有的ASCI ...
- android获取图片缩略图,Android系获取图片和视频的缩略图
获取手机里视频缩略图: public static Bitmap getVideoThumbnail(ContentResolver cr,Uri uri) { Bitmap bitmap = nul ...
- android 查询所有图片和视频,Android系统详解之获取图片和视频的缩略图
从Android 2.2开始系统新增了一个缩略图ThumbnailUtils类,位于framework的android.media.ThumbnailUtils位置,可以帮助我们从mediaprovi ...
- js获取图片和视频的宽高等
获取图片和视频的宽高 日常开发中,在提交给后端视频和图片等文件之前,需要控制文件的的宽高,大小等. 图片 // 上传文件的方法 uploadFile(e) {let that = this// 该fi ...
- Unity调用android相册获取图片或视频
Unity调用android相册获取图片或视频 (此文章对有unity基础和对环境配置有基础的童嚡容易看懂) 因为项目上用到,在百度了很多大佬的文章后,陆陆续续踩了很多坑,可能是我哪里设置的不对,大部 ...
- 通过python建立一个web服务查看服务器上的文本、图片、视频等文件
通过python建立一个web服务查看服务器上的文本.图片.视频等文件 文章目录: 1 在服务器端开启一个服务 2 在本地浏览器中输入服务器的ip地址 1 在服务器端开启一个服务 python -m ...
- python web微信应用(五) 自动下载接收的图片/语音/视频/普通文件
文章目录 前言 一.webwx 模块介绍 二.自动下载接收的图片/语音/视频/普通文件到本地 前言 本篇文章作为系列第五篇文章,将实现自动下载接收到的图片.语音.视频.普通文件的功能: 系列其它文章请 ...
- Win10 电脑恢复我的电脑图片、视频等文件夹
文章目录 Win10 电脑恢复我的电脑图片.视频等文件夹 1. 要恢复的文件夹 2. 恢复方法 3. 其他相关链接 Win10 电脑恢复我的电脑图片.视频等文件夹 1. 要恢复的文件夹 2. 恢复方法 ...
- Unity 分享 功能 用Unity Native Share Plugin 实现链接、图片、视频等文件的分享+ 安卓 Ios 都可以,代码图文详解
Unity 分享 功能 用Unity Native Share Plugin 实现链接.图片.视频等文件的分享+ 安卓 Ios 都可以,代码图文详解 前言 环境 效果 一.Unity Native S ...
最新文章
- 第三期 OSI七层中第一层 物理层
- 一文带你看懂分布式软总线在家庭场景的应用
- win8.1和wp8.1共用代码,需要注意的一些问题
- OS中atomic的实现解析
- 转:【总结】浏览器CSS Hacks汇总,浏览器兼容方式CSS Hacks
- 服务器文件夹同步到手机,本机文件夹同步到云服务器
- 计算机网络画出发送窗口变化,全国2010年7月自考计算机网络原理试题及答案
- 程序员风光背后:从零到BAT数据分析师靠的是什么?
- 五眼网络安全机构联合发布事件响应指南
- autoComplete实现的输入下拉联想功能
- linux安装java、配置 jmeter
- 解决 Could not find common.jar (android.arch.core:common:1.0.0). 错误
- Visual Studio更换默认浏览器
- 移动硬盘插上电脑卡住_插入移动硬盘死机故障分析及解决方案(图文详解)
- python中turtle画小草_python 笔记 之带参数的装饰器
- GSM Hacking:如何对GSM/GPRS网络测试进行测试
- 7-1 厘米换算英尺英寸(基础编程题)
- 数据可视化什么意思?
- linux下ffmpeg库 ARM交叉编译
- 线性关系和非线性关系异或与非线性关系
热门文章
- efi shell的英文介绍_请问电脑开机后显示英文字母efi shell version 2.31是什么意思...
- Win7旗舰版扬声器打不开解决方法
- 计算机软考网络管理员满分,2016年计算机软考网络管理员必做试题
- 关于SQLyog创建函数
- 华为3C联通移动一键刷入官方recovery,解决root后如何刷回原版系统,刷机后无法进入系统的问题
- (一) OBEX介绍
- 零信任-深信服零信任aTrust介绍(5)
- 30岁了,最近碰到的那些离婚的事儿
- Tera CLOUD + Zotero 文献管理
- 关于ArcGis for javascript整合百度地图 天地图 高德地图进行搜索