import java.nio.file.Files;
import java.nio.file.Paths;
import java.nio.file.Path;
import java.io.IOException;public class DirectoryCreation{ public static int count=0;
public static void main(String[] args){
try{
Path path=Paths.get("E:/NewDirectoryByJava");
if(Files.notExists(path))
Files.createDirectory(path);
else{

path=Paths.get("E:/NDByJava/Something", String.valueOf(count));
Files.createDirectories(path);
count++;
}

}catch(IOException e){
e.printStackTrace();
}
}}如题,把上面的代码编译之后,无论运行几次,系统里面都只有E:/NDByJava/Something/0和E:/NewDirectoryByJava这两个文件夹,而不会生成E:/NDByJava/Something/1的文件夹,这到底是为什么??

解决方案 »

  1.   

    你每次运行的时候静态变量初始值都是0
    用for循环让中间代码运行多次的话,应该就有1文件夹啦.
      

  2.   

    除了用循环,还有什么办法可以把count这个变量存储在操作系统里面吗?
      

  3.   

    其实还有一个问题,就是在使用File.createDirectories(path)的时候,无论运行几次,都不会抛出FileAlreadyExistsException这个异常,为什么会这样?