java创建文件
import java.lang.String;
import java.io.File;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Scanner;
import java.util.stream.Collectors;
public class CreateDirAndFileApp {
private static final String ROOT = "." + File.separator;
private static Scanner scanner = new Scanner(System.in);
public static void main(String[] args) {
File dir = createDirs();
}
private static File createDirs(){
List<String> pathList = new ArrayList<>();
while (true){
System.out.println("请输入文件路径,如果为空则结束");
String path = scanner.nextLine();
if (path.isEmpty()){
break;
}
pathList.add(path);
}
return createDir(pathList.toArray(new String[0]));
}
private static File createDir(String... restPaths){
String rest = joinRestDir(restPaths);
System.out.println("将在"+ROOT+"下面创建"+rest);
File dir = new File(ROOT,rest);
if (dir.exists()&&dir.isDirectory()){
System.out.println("文件夹已经存在"+dir.toString());
return dir;
}else {
boolean createSuccess = dir.mkdirs();
if (createSuccess){
return dir;
}else {
throw new IllegalArgumentException("无法在"+ROOT+"下创建"+dir);
}
}
}
private static String joinRestDir(String... restPaths){
return Arrays.stream(restPaths).map(String::trim).collect(Collectors.joining(File.separator));
}
}