package com.mzl.flower.utils;
|
|
import org.springframework.web.multipart.MultipartFile;
|
|
import javax.imageio.ImageIO;
|
import java.awt.image.BufferedImage;
|
import java.io.*;
|
|
public class FileUtil
|
{
|
public static String getFileEndfix(String fileName){
|
int idx = fileName.lastIndexOf(".");
|
String end = "";
|
if(idx > -1){
|
end = fileName.substring(idx);
|
}
|
|
return end;
|
}
|
|
public static String prepareSubFolder(Long id){
|
String tt = "0" + id;
|
return tt.substring(0, 2);
|
}
|
|
public static String saveFile(String path, byte[] filebytes, String fileName, String group){
|
String fileDir = group + "/";
|
String uuid = UUIDGenerator.getUUID();
|
fileDir += uuid.substring(0, 2) + "/";
|
|
path = path + fileDir;
|
File dir = new File(path);
|
if(!dir.exists()){
|
dir.mkdirs();
|
}
|
|
File newFile = new File(path + fileName);
|
|
InputStream inputStream = null;
|
OutputStream outputStream = null;
|
|
try {
|
inputStream = new ByteArrayInputStream(filebytes);
|
|
if (!newFile.exists()) {
|
newFile.createNewFile();
|
}
|
|
outputStream = new FileOutputStream(newFile);
|
int read = 0;
|
byte[] bytes = new byte[1024];
|
|
while ((read = inputStream.read(bytes)) != -1) {
|
outputStream.write(bytes, 0, read);
|
}
|
} catch (Exception e) {
|
try{
|
newFile.delete();
|
}catch(Exception e1){
|
}
|
return null;
|
} finally{
|
if(inputStream != null){
|
try {
|
inputStream.close();
|
} catch (IOException e) {
|
}
|
}
|
if(outputStream != null){
|
try {
|
outputStream.close();
|
} catch (IOException e) {
|
}
|
}
|
}
|
if(newFile.length() == 0){
|
return null;
|
}
|
String imageUrl = fileDir + fileName;
|
|
return imageUrl;
|
}
|
|
public static String saveFile(String path, MultipartFile file, String fileName, String group){
|
String fileDir = group + "/";
|
path = path + fileDir;
|
File dir = new File(path);
|
if(!dir.exists()){
|
dir.mkdirs();
|
}
|
|
File newFile = new File(path + fileName);
|
|
InputStream inputStream = null;
|
OutputStream outputStream = null;
|
|
try {
|
inputStream = file.getInputStream();
|
|
if (!newFile.exists()) {
|
newFile.createNewFile();
|
}
|
|
outputStream = new FileOutputStream(newFile);
|
int read = 0;
|
byte[] bytes = new byte[1024];
|
|
while ((read = inputStream.read(bytes)) != -1) {
|
outputStream.write(bytes, 0, read);
|
}
|
} catch (Exception e) {
|
try{
|
newFile.delete();
|
}catch(Exception e1){
|
}
|
return null;
|
} finally{
|
if(inputStream != null){
|
try {
|
inputStream.close();
|
} catch (IOException e) {
|
}
|
}
|
if(outputStream != null){
|
try {
|
outputStream.close();
|
} catch (IOException e) {
|
}
|
}
|
}
|
if(newFile.length() == 0){
|
return null;
|
}
|
String imageUrl = fileDir + fileName;
|
|
return imageUrl;
|
}
|
|
public static String getImageWh(File file){
|
if(file == null || !file.exists()){
|
return null;
|
}
|
|
String str = null;
|
InputStream inputStream1 = null;
|
try{
|
inputStream1 = new FileInputStream(file);
|
BufferedImage image = ImageIO.read(inputStream1);
|
Integer width = image.getWidth();
|
Integer height = image.getHeight();
|
str = "#" + width + "," + height;
|
} catch (Exception e) {
|
} finally{
|
if(inputStream1 != null){
|
try {
|
inputStream1.close();
|
} catch (IOException e) {
|
}
|
}
|
}
|
|
return str;
|
}
|
|
public static String saveFile(String path, File file, String fileName, String group){
|
String fileDir = group + "/";
|
path = path + fileDir;
|
File dir = new File(path);
|
if(!dir.exists()){
|
dir.mkdirs();
|
}
|
|
File newFile = new File(path + fileName);
|
|
InputStream inputStream = null;
|
OutputStream outputStream = null;
|
|
try {
|
inputStream = new FileInputStream(file);
|
|
if (!newFile.exists()) {
|
newFile.createNewFile();
|
}
|
|
outputStream = new FileOutputStream(newFile);
|
int read = 0;
|
byte[] bytes = new byte[1024];
|
|
while ((read = inputStream.read(bytes)) != -1) {
|
outputStream.write(bytes, 0, read);
|
}
|
} catch (Exception e) {
|
try{
|
newFile.delete();
|
}catch(Exception e1){
|
}
|
return null;
|
} finally{
|
if(inputStream != null){
|
try {
|
inputStream.close();
|
} catch (IOException e) {
|
}
|
}
|
if(outputStream != null){
|
try {
|
outputStream.close();
|
} catch (IOException e) {
|
}
|
}
|
}
|
|
if(newFile.length() == 0){
|
return null;
|
}
|
|
String imageUrl = fileDir + fileName;
|
|
return imageUrl;
|
}
|
|
public static File createTempFile(String prefix, String suffix) throws IOException
|
{
|
return File.createTempFile(prefix, suffix);
|
}
|
|
public static void copyFile(String srcPath, String destPath)throws Exception {
|
copyFile(new File(srcPath), new File(destPath));
|
}
|
|
public static void copyFile(File srcPath, File destPath)throws Exception {
|
try{
|
FileInputStream inPut = new FileInputStream(srcPath);
|
FileOutputStream outPut = new FileOutputStream(destPath);
|
byte[] bytes=new byte[1024];
|
int i;
|
while((i=inPut.read(bytes))!= -1){
|
outPut.write(bytes,0,i);
|
}
|
inPut.close();
|
outPut.close();
|
} catch(Exception e){
|
throw e;
|
}
|
}
|
|
}
|