我想创建一个名为lists的新文件夹/目录,但是如果有人有任何建议会非常感激,它会继续失败。谢谢。
File file = new File(this.getFilesDir() +File.separator +"Lists");
if(file.mkdirs()){
System.out.println("Directory success");
}else{
System.out.println("Directory failed!");
}
System.out.println(file.getAbsolutePath());
if(file.isDirectory()){
System.out.println("File is a directory");
File lists[] = file.listFiles();
String names[] = new String[lists.length];
if(lists.length >0){
for(int i = 0; i < lists.length; i ++){
names[i] = lists[i].getName();
}
}else{
names[0] = "Create New List";
}
}else{
System.out.println("File is not a directory");
}
答案 0 :(得分:0)
我的第一个答案是完全错误的(我为此道歉)!我相信这是正确的。
我认为问题在于以下几行:
File lists[] = file.listFiles();
String names[] = new String[lists.length];
if(lists.length > 0){
for(int i = 0; i < lists.length; i ++){
names[i] = lists[i].getName();
}
}else{
names[0] = "Create New List";
}
您刚刚创建了该文件夹,因此其中没有文件,因此lists[]
不会有任何大小,但在您的else语句中,您正在向names
数组中添加一个项目即使它没有大小。从else语句中删除names[0] = "Create New List";
应该有效。