package com.rscode.credits.util;

import java.io.File;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Date;
import java.util.List; import org.apache.commons.io.FileUtils;
import org.springframework.web.multipart.MultipartFile;
/**
* 图片工具
* @author tn
* @RequestParam("file")CommonsMultipartFile file
*
*/ public class ImageUtil { private static List<String> image = new ArrayList<>(Arrays.asList("PNG","JPEG","JPG","GIF","BMP")); /**
* 上传图片文件(PNG,JPEG,JPG,GIF)
* @param file 文件
* @param imagePath 图片存储路径
* @return newFileNamePath返回文件的相对路径 (自定义目录/xx.jpg)
* return null 没有图片
* return erro 图片格式有误
* return excp 上传失败
* return 返回文件名
*/
public static String filePut(MultipartFile file,String imagePath){
//获取前端文件名
String fileName = file.getOriginalFilename();//获取上传文件的文件名
String end = fileName.substring(fileName.lastIndexOf(".")+1).toUpperCase();//判断图片后缀是否正确 if(file.isEmpty()){//fileName.equals("")||fileName==null
System.out.println("没有图片");
return null;
}else if(image.contains(end)){
String newFileName =new Date().getTime()+"."+end; // 新文件名 end后缀
File f = new File(imagePath);
if (!f.exists()) //服务器中文件不存在就创建
f.mkdirs();
if (!file.isEmpty()) { //文件不为空
try {
//保存文件
file.transferTo(new File(imagePath + newFileName));
} catch (Exception e) {
e.printStackTrace();
return "excp";
}
}
return newFileName;//返回图片新名字
} else { return "erro";
} } /**
* 到存放图片的文件夹下面删除图片
*
* @param fileName
* @return
*/
public static boolean fileDelete(String imagePath) {
if (imagePath == null) {
return false;
}
try {
//强制删除方法
FileUtils.forceDelete(new File(imagePath));
} catch (IOException e) {
e.printStackTrace();
return false;
}
return true;
} // public static void main(String[] args) {
// imageUtil.fileDelete("C:\\Users\\en\\Desktop\\WORK\\Image\\activity\\b - 副本.jpg");
// }
}

ImageUtil的更多相关文章

  1. ImageUtil(验证码数据生成工具类)

    登录界面时,常常会使用到验证码图片生成,程序如下: package util; import java.awt.Color; import java.awt.Font; import java.awt ...

  2. 二、工具类ImageUtil——图片处理

    这个工具类完成的工作如下: 1.第一个static方法,完成图片格式的转换.统一转换成.jpg格式. package util; import java.awt.Toolkit; import jav ...

  3. Android ViewPager打造3D画廊

    本文已授权微信公众号:鸿洋(hongyangAndroid)在微信公众号平台原创首发. 网上有很多关于使用Gallery来打造3D画廊的博客,但是在关于Gallery的官方说法中表明: This cl ...

  4. Java 条形码 二维码 的生成与解析

    Barcode简介 Barcode是由一组按一定编码规则排列的条,空符号,用以表示一定的字符,数字及符号组成的,一种机器可读的数据表示方式. Barcode的形式多种多样,按照它们的外观分类: Lin ...

  5. 一站式解决,Android 拍照 图库的各种问题.

    在android开发中, 在一些编辑个人信息的时候,经常会有头像这么一个东西,就两个方面,调用系统相机拍照,调用系统图库获取图片.但是往往会遇到各种问题: 1.oom 2.图片方向不对 3.activ ...

  6. 获取img的真实宽高

    之前项目后台上传图片时需要对图片的宽高做限制,一开始百度了之后使用js进行判断,可是这种方式存在一定问题,后来就改在后台判断了.现在吧这两种方式都贴出来. 一.用js获取: 先说第一个方法:obj.s ...

  7. 分享我的开源项目-springmore

    之前有在博客园分享过springmore,不知道是什么原因,被管理员移除首页 在此郑重声明,这是我个人的开源项目,东西不多,也不存在打广告,也没有什么利益可图 完全是出于分享的目的,望博客园管理员予以 ...

  8. 【完整靠谱版】结合公司项目,仔细总结自己使用百度编辑器实现FTP上传的完整过程

    说在前面 工作中会遇到很多需要使用富文本编辑器的地方,比如我现在发布这篇文章离不开这个神器,而且现在网上编辑器太多了.记得之前,由于工作需要自己封装过一个编辑器的公共插件,是用ckeditor改版的, ...

  9. (转)百度编辑器java使用

    说在前面 工作中会遇到很多需要使用富文本编辑器的地方,比如我现在发布这篇文章离不开这个神器,而且现在网上编辑器太多了.记得之前,由于工作需要自己封装过一个编辑器的公共插件,是用ckeditor改版的, ...

随机推荐

  1. Spring Boot:Web 综合开发

    Web 开发 Spring Boot Web 开发非常的简单,其中包括常用的 json 输出.filters.property.log 等 json 接口开发 在以前使用 Spring 开发项目,需要 ...

  2. C#Mvc批量删除

    前台页面(JQuery) @*全选&批删*@<script type="text/javascript"> $(document).ready(function ...

  3. 修改docker出现中文字符出现乱码的问题

    修改docker出现中文字符出现乱码的问题 在启动容器时 指定选项  -e LANG=en_US.UTF-8

  4. 记录配置xshell显示中文乱码的一次巧合

    linux系统设置了中文UTF8,xshell终端也设置了中文UTF8,但xshell仍然无法显示中文,于是想起可能是字体显示问题. 设置楷体字体后,虽然文字方向还有问题,但乱码显示的问题解决了,方向 ...

  5. SQL语句:如何让字符串转化数字

    和前端联调的时候,突然出现一个状况,新增数据的时候,一直报系统错误,写下此文,留以后反复温习.菜鸟程序员一名~ 项目内容:新增产品信息 具体实现:1 获取基础信息,创建产品(调用接口传入的产品类型,如 ...

  6. python 保留字符

    False 假的 None 无 True 真的 and 和 as作为 assert 断言 break 打破 class 种类 continue 继续 def del 删除 elif 否则如果 else ...

  7. Datatables一些常见的JS用法(多与表格有关)

    **********************--倒--序--上--升--(方便新增.更新)*********************** (3)给 动态生成 的 行 内按钮,添加点击事件(多用于分页情 ...

  8. linux 清理缓存buff/cache

    清理缓存 echo 1 > /proc/sys/vm/drop_cachesecho 2 > /proc/sys/vm/drop_cachesecho 3 > /proc/sys/v ...

  9. U盘安装kali中CDROM问题解决

    1,采用ultraISO 制作Kali的安装盘,无法安装.U盘不能被识别. 2,改用win32diskimager,能识别了,但期间出现CDROM找不到. 3,采用网上方式,ALT+ F2,ls /d ...

  10. phpstorm本地破解激活

    下载对应文件:http://idea.lanyus.com/自己用的破解补丁无需使用注册码) 找到phpstorm 的安装路径, 在\bin目录下有两个文件 PhpStorm.exe.vmoption ...