我目前正在为文件管理服务器开发RecycleBin组件。删除文档后,将从多个位置删除所有版本。发生这种情况时,所有文件夹路径都将删除到重复的字符串dp_original_folder_paths。
我想创建不存在的文件夹路径。
这是我目前的代码。第一部分检查文件是否存在,如果没有创建它。第二部分显示文件正在重新链接到文件夹。
for (int i = 0;
i < relationRecord.getValueCount("dp_original_folder_paths"); i++)
{
File f = new File(relationRecord.getRepeatingString(
"dp_original_folder_paths",
i));
if(!f.exists())
{
System.out.println("creating directory" + f);
f.mkdir();
}
// Link the document back to the original folders
for (int i = 0; i < relationRecord.getValueCount("dp_original_folder_paths")
i++)
{
document.link(
relationRecord.getRepeatingString("dp_original_folder_paths", i));
}
给出的输出是
创建目录:\ EAM \ sbotest
创建了DIR
链接到/ EAM / sbotest
DfPathNotFoundException :: THREAD:http-bio-8080-exec-7;味精:[DM_API_E_EXIST]错误 或:“/ EAM / sbotest指定的文件夹不存在。”; ERRORCODE:100;下一步:null
有谁知道为什么在第一个println中输出是\ EAM \ sbotest而第二个输出是\成为/ / EAM / sbotest
感谢您的帮助。
答案 0 :(得分:1)
自Java 1.7以来,建议使用
Files.createDirectories(new File("C:/dir1/dir2/dir3/").toPath());
答案 1 :(得分:0)
使用f.mkdirs()
创建父目录。
f.mkdir()
只会尝试创建最后一个子目录,父目录必须存在。
答案 2 :(得分:0)
你有没有看过File#mkdirs?
它将为您创建目录和任何不存在的父目录。