日期:2014-05-20 浏览次数:21052 次
import java.io.File; import java.io.IOException; import java.text.DateFormat; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.Date; public class Test { public static void main(String[] args) throws ParseException, IOException { createFile("新建文件"); createFile("新建文件"); createFile("新建文件"); createFile("新建文件"); createFile("新建文件"); } public static void createFile(String path) throws IOException{ createFile(new File(path)); } public static void createFile(File file) throws IOException{ String path = file.getPath(); int i = 1; while(true){ if(!file.exists()){ file.createNewFile(); break; }else{ file = new File(path + "(" + i + ")"); i++; } } } }
------解决方案--------------------
import java.io.File;
public class Test5 {
/**
* @param args
*/
public static void main(String[] args) {
File file = new File("D:\\AA");
if (!file.exists()) {
file.mkdirs();
}
int index = 0;
String name;
while (index < 100) {
name = getNewFolderName("D:\\AA");
file = new File("D:\\AA\\" + name);
file.mkdirs();
index++ ;
}
System.out.println("创建完成");
}
/**
* 根据穿进去的路径得到新建目录的目录名
* @param path 路径
* @return
*/
public static String getNewFolderName(String path) {
String sIdx = "";
File dir = new File("D:\\AA");
File[] files = dir.listFiles();
File file = null;
String name = "新建文件夹"; //先找出是否有 "新建文件夹" 这个目录,如果有则设置name为"" ;
for (int i = 0; i < files.length; i++) {
file = files[i];
if (file.isDirectory() && (name).equals(file.getName())) {
name = "";
break;
}
}
//判断name是否为"",即判断"新建文件夹",是否存在,如果存在,则逐个判断 "新建文件夹" + i,如果不存在,则返回创建
if ("".equals(name)) {
for (int i = 1; i <= files.length; i++) {
name = "新建文件夹" + i;
for (int j = 0; j < files.length; j++) {
file = files[j];
if (file.isDirectory() && (name).equals(file.getName())) {
name = "";
break;
}
if (j == files.length) {
break;
}
}
if (!"".equals(name)) {
break;
}
}
}
return name;
}
}