|
@@ -27,13 +27,11 @@ public class FileUtils {
|
|
|
//获取 applicationHome 内的路径 ...\target\classes 到这一层级下
|
|
|
File file = ah.getSource();
|
|
|
//获取 file的parentFile 即最后一级之前的所有层级路径(包括盘符) 这里能获得到的最终层级为 ...\target 后续用FILE_SEPARATOR(系统路径分割通配符 即 "\") 以及fileName拼接生成存放文件的目录层级 即为根目录 root
|
|
|
- String rootPath =null;
|
|
|
+ String rootPath = null;
|
|
|
|
|
|
- if (fileName!=null&&!fileName.equals(""))
|
|
|
- {
|
|
|
- rootPath= file.getParentFile().toString() + FILE_SEPARATOR + fileName;
|
|
|
- }
|
|
|
- else {
|
|
|
+ if (fileName != null && !fileName.equals("")) {
|
|
|
+ rootPath = file.getParentFile().toString() + FILE_SEPARATOR + fileName;
|
|
|
+ } else {
|
|
|
rootPath = file.getParentFile().toString();
|
|
|
}
|
|
|
//根据上方生成的根目录路径 生成对应文件夹 没有就新建
|
|
@@ -76,7 +74,7 @@ public class FileUtils {
|
|
|
return last.toString();
|
|
|
}
|
|
|
|
|
|
- public static File getFileByBytes(byte[] bytes, String prefix, String suffix) {
|
|
|
+ public static File getFileByBytes(byte[] bytes, String prefix, String suffix) {
|
|
|
BufferedOutputStream bos = null;
|
|
|
FileOutputStream fos = null;
|
|
|
File file = null;
|
|
@@ -110,12 +108,12 @@ public class FileUtils {
|
|
|
e.printStackTrace();
|
|
|
}
|
|
|
}
|
|
|
- return file;
|
|
|
+ return file;
|
|
|
}
|
|
|
}
|
|
|
|
|
|
|
|
|
- public static File getFileByUrl(String dataUrl) throws IOException {
|
|
|
+ public static File getFileByUrl(String dataUrl) throws IOException {
|
|
|
|
|
|
URL url = new URL(dataUrl); //想要读取的url地址
|
|
|
InputStream in = url.openStream();
|
|
@@ -132,7 +130,8 @@ public class FileUtils {
|
|
|
in.close();
|
|
|
return file;
|
|
|
}
|
|
|
- public static File getPictureFileByUrl(String dataUrl) throws IOException {
|
|
|
+
|
|
|
+ public static File getPictureFileByUrl(String dataUrl) throws IOException {
|
|
|
|
|
|
URL url = new URL(dataUrl); //想要读取的url地址
|
|
|
InputStream in = url.openStream();
|
|
@@ -149,9 +148,11 @@ public class FileUtils {
|
|
|
in.close();
|
|
|
return file;
|
|
|
}
|
|
|
+
|
|
|
public String getPath(String url) {
|
|
|
return getStaticPath(COMMON_FILE) + url;
|
|
|
}
|
|
|
+
|
|
|
public String getDirectoryName() {
|
|
|
return DateUtils.getNowTimeFormat("yyyyMMdd");
|
|
|
}
|
|
@@ -159,6 +160,7 @@ public class FileUtils {
|
|
|
public String getSavePath(String directoryName) {
|
|
|
return getStaticPath(COMMON_FILE) + FILE_SEPARATOR + directoryName + FILE_SEPARATOR;
|
|
|
}
|
|
|
+
|
|
|
public String createDirectory() {
|
|
|
String directoryName = this.getDirectoryName();
|
|
|
String savePath = this.getSavePath(directoryName);
|
|
@@ -168,8 +170,9 @@ public class FileUtils {
|
|
|
}
|
|
|
return directoryName;
|
|
|
}
|
|
|
+
|
|
|
public String createRandomDirectory() {
|
|
|
- String directoryName = IdUtil.simpleUUID();
|
|
|
+ String directoryName = IdUtil.simpleUUID();
|
|
|
String savePath = this.getSavePath(directoryName);
|
|
|
File directory = new File(savePath);
|
|
|
if (!directory.exists()) {
|
|
@@ -177,6 +180,7 @@ public class FileUtils {
|
|
|
}
|
|
|
return directoryName;
|
|
|
}
|
|
|
+
|
|
|
public static FileInputStream byteToFile(byte[] bytes) {
|
|
|
String fileName = IdUtil.simpleUUID() + ".png";
|
|
|
File file = new File(fileName);
|
|
@@ -208,13 +212,16 @@ public class FileUtils {
|
|
|
public String getDirectory(String fileName) {
|
|
|
return FILE_SEPARATOR + this.createDirectory() + FILE_SEPARATOR + fileName;
|
|
|
}
|
|
|
+
|
|
|
public String getSystemPath(String url) {
|
|
|
return getStaticPath(COMMON_FILE) + FILE_SEPARATOR + url;
|
|
|
}
|
|
|
+
|
|
|
public static String getSystemPath2(String url) {
|
|
|
return getStaticPath(COMMON_FILE) + FILE_SEPARATOR + url;
|
|
|
}
|
|
|
- public static void writeFile(String json, String FilePath) {
|
|
|
+
|
|
|
+ public static void writeFile(String json, String FilePath) {
|
|
|
|
|
|
try {
|
|
|
File file = new File(FilePath);
|
|
@@ -238,4 +245,33 @@ public class FileUtils {
|
|
|
}
|
|
|
}
|
|
|
|
|
|
+ public static File multipartFileToFile(MultipartFile file) throws Exception {
|
|
|
+ File toFile = null;
|
|
|
+ if (file == null || file.equals("") || file.getSize() <= 0) {
|
|
|
+ file = null;
|
|
|
+ } else {
|
|
|
+ InputStream ins = null;
|
|
|
+ ins = file.getInputStream();
|
|
|
+ toFile = new File(file.getOriginalFilename());
|
|
|
+ inputStreamToFile(ins, toFile);
|
|
|
+ ins.close();
|
|
|
+ }
|
|
|
+ return toFile;
|
|
|
+ }
|
|
|
+
|
|
|
+ //获取流文件
|
|
|
+ private static void inputStreamToFile(InputStream ins, File file) {
|
|
|
+ try {
|
|
|
+ OutputStream os = new FileOutputStream(file);
|
|
|
+ int bytesRead = 0;
|
|
|
+ byte[] buffer = new byte[8192];
|
|
|
+ while ((bytesRead = ins.read(buffer, 0, 8192)) != -1) {
|
|
|
+ os.write(buffer, 0, bytesRead);
|
|
|
+ }
|
|
|
+ os.close();
|
|
|
+ ins.close();
|
|
|
+ } catch (Exception e) {
|
|
|
+ e.printStackTrace();
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|