未通过java程序在linux中创建文件夹
我正在尝试使用以下代码创建文件夹并在其中写入war中的图像:未通过java程序在linux中创建文件夹,java,linux,file,Java,Linux,File,我正在尝试使用以下代码创建文件夹并在其中写入war中的图像: // 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.o
// 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;
}
}
输出:创建目录失败。您的
absoluteDiskPath
不是绝对的。不确定这是否是故意的,但你在它前面缺少了一条斜线。
另外,我猜,您想要的是.mkdirs
而不是.mkdir
。复数形式创建路径中的所有文件夹,单数形式仅创建最后一个,如果路径的其余部分不存在,则失败
也就是说,如果您试图创建一个文件夹“foo/bar/baz”,
.mkdir
将失败,除非您当前目录中已经有一个文件夹“foo”,其中包含一个名为“bar”的文件夹。您的绝对磁盘路径
不是绝对的。不确定这是否是故意的,但你在它前面缺少了一条斜线。
另外,我猜,您想要的是.mkdirs
而不是.mkdir
。复数形式创建路径中的所有文件夹,单数形式仅创建最后一个,如果路径的其余部分不存在,则失败
也就是说,如果您试图创建文件夹“foo/bar/baz”,
.mkdir
将失败,除非您当前目录中已经有一个文件夹“foo”,其中包含一个名为“bar”的文件夹。添加一个异常块,以检查错误消息why is无法创建目录。大多数情况下,权限问题可能是Usemkdirs()
的副本,如果父目录不存在,请添加异常块以检查错误消息why is无法创建目录。大多数情况下,权限问题可能与Usemkdirs()
重复。相反,如果不存在父目录,则不存在父目录,我只想创建旅行计划。我想,这是缺少斜杠的问题。您试图在当前目录中创建此patn,这几乎总是错误的。它们是两个不同的目录/tmp/mjpics,war在另一个目录中。这与war所在的位置无关。为我工作字符串absoluteDiskPath=“/tmp/mjpics/images/travel_schedule”父目录存在,我只想创建旅行计划。我想,这是缺少斜线的问题。您试图在当前目录中创建此patn,这几乎总是错误的。它们是两个不同的目录/tmp/mjpics,war在另一个目录中。这与war所在的位置无关。为我工作字符串absoluteDiskPath=“/tmp/mjpics/images/travel_schedule”