本帖最后由 achilles 于 2012-7-12 17:59 编辑
//File file = new File("c:\\\\dir");
//File file = new File("c:////dir");
//File file = new File("c:/dir");
file.mkdir();
我做了实验,以上3种写法都可以成功创建一个名为dir的文件
String dir = "c:\\dir"
File file = new File(dir);
System.out.println(dir);
不知道楼主有没有注意过这个细节,dir我们写的时候是c:\\dir 但你打印dir的时候控制台显示的却是c:\dir
还有我们直接写"c:\dir"编译器就会报错,所以我们写成"c:\\dir"实际上是为了"欺骗"编译器的
我们都知道java不具备在XP系统中创建文件的能力,它实际上上调用系统的资源创建的文件,根据以上的实验,我个人推断系统在拿到我们输入的字符串路径会按照类似于正则的一种规则,比如按照"\\+"和"/+"进行切割分离出路径,然后再根据我们的Java命令创建文件对象
所以我认为你构造函数中传入的dirpath实际上还是"F:\javaCode\day12"这个字符串 |