@Test public void testFile() throws IOException{ String str = "/home/test"; File file = new File(str); if (!file.exists()) { file.mkdir(); System.out.println(file.getAbsolutePath()); } }
[quote]确实是这样啊,其实我想问的是,为什么会这样?它为什么不认为该路径不存在啊,确自主加上运行环境所在的盘符[/quote]
java就是这样认为的啊。/ 表示根,这很好理解吧!
在windows中,根是什么呢?根就是所在盘的根目录!
程序没什么问题啊,为什么要报错
在windows中,"/home/test"相当于在前面加一个盘符,如"c:/home/test",加哪一个盘符就看程序运行时环境在哪个盘。
file.mkdir(); 创建不成功是返回false,不是有异常。
换成 file.mkdirs(); 你会看到创建成功了,就在运行那个盘。