文件夹不是通过java程序在linux中创建的

时间:2016-01-02 14:05:16

标签: java linux file

我正在尝试使用以下代码创建文件夹并在其中写入图像:

// war directory : /opt/apache-tomcat/webapps/mj.war

String absoluteDiskPath = "tmp/mjpics/images/travel_schedule";
File file = new File(absoluteDiskPath);
if (!file.exists()) {
    if (file.mkdir()) {
        System.out.println("Directory is created!");
        try {
            writeText(textcontent, textFileName, eventDate, eventCat, absoluteDiskPath+"\\"+eventCat+"\\"+eventName);
            writeImage(imagecontent, imageFileName, eventDate, eventCat, absoluteDiskPath+"\\"+eventCat+"\\"+eventName);
            imagecontent.close();
            textcontent.close();
            UplodedData.flush();
        } catch (IOException e) {
            e.printStackTrace();
            return false;
        }
        return true;
    } else {
        System.out.println("Failed to create directory!");
        return false;
    }
}

输出:无法创建目录。

1 个答案:

答案 0 :(得分:3)

你的absoluteDiskPath不是绝对的。不确定这是否是故意的,但你在它前面缺少斜线。 此外,我猜,您想要.mkdirs而不是.mkdir。复数形式创建路径中的所有文件夹,单数将仅创建最后一个文件夹,如果路径的其余部分不存在则失败。

即如果您尝试创建文件夹“foo / bar / baz”,.mkdir将失败,除非您当前目录中已有一个文件夹“foo”,其中包含一个名为“bar”的文件夹它的。