【发布时间】:2020-07-22 10:04:00
【问题描述】:
当我使用下面的代码时,即使 D 驱动器中不存在 \scrshot\vb,它也会创建 \scrshot\vb\uv。
takeScreenshot("D:\\scrshot\\vb\\uv", "s.png");
public void takeScreenshot(String fileDir,String fileName)
{
File directory=new File(fileDir);
if(!directory.exists())
directory.mkdir();
File file=((TakesScreenshot)ddr).getScreenshotAs(OutputType.FILE);
try {
FileUtils.copyFile(file,new File(directory.getAbsolutePath()+File.separator+fileName));
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
如果我的理解是正确的,如果父文件夹不存在,mkdir() 将不会创建它。但这里它在 D 驱动器下创建 \scrshot\vb\。这个thread供参考。
【问题讨论】:
-
您确定该目录不是由
FileUtils.copyFile()创建的吗? -
请注明JDK版本。
-
我正在使用 Java 8
-
@Kenster 你是对的。 FileUtils.copyFile() 创建文件夹结构而不是 mkdir()。您能否解释一下为什么会在您的答案中发生。
标签: java