package com.pollex.pam.service.util;
|
|
|
import java.io.BufferedOutputStream;
|
import java.io.File;
|
import java.io.FileOutputStream;
|
import java.io.IOException;
|
import java.util.Base64;
|
|
import org.slf4j.Logger;
|
import org.slf4j.LoggerFactory;
|
|
public class FileUtil {
|
|
private static final Logger log = LoggerFactory.getLogger(FileUtil.class);
|
|
public static File base64ToFile(String base64, String fileName, String folderPath) {
|
if(base64 == null){
|
return new File(folderPath);
|
}
|
File dir=new File(folderPath);
|
dir.setWritable(true);
|
dir.setReadable(true);
|
if (!dir.exists() && !dir.isDirectory()) {
|
dir.mkdirs();
|
}
|
return base64ToFile(base64, toPath(fileName, folderPath));
|
}
|
|
public static File base64ToFile(String base64, String path) {
|
if(base64 == null){
|
return new File(path);
|
}
|
|
BufferedOutputStream bos = null;
|
|
try {
|
byte[] bytes = Base64.getDecoder().decode(base64);
|
File file=new File(path);
|
file.setWritable(true);
|
file.setReadable(true);
|
bos = new BufferedOutputStream(new FileOutputStream(file));
|
bos.write(bytes);
|
|
|
return file;
|
} catch (Exception e) {
|
log.error("upload file base64 to file error",e);
|
} finally {
|
if (bos != null) {
|
try {
|
bos.close();
|
} catch (IOException e) {
|
log.error("upload file base64 to file error",e);
|
}
|
}
|
}
|
|
return null;
|
}
|
|
public static boolean isFileExisted(String fileName, String folderPath) {
|
return new File(toPath(fileName, folderPath)).isFile();
|
}
|
|
public static String toPath(String fileName, String folderPath) {
|
return folderPath + "/" + fileName;
|
}
|
}
|