我有后续的麻烦。我的应用程序应该读取文件列表并向用户显示它们的名称。当应用程序第一次启动时,我需要为应用程序创建一个特定的文件夹?那我如何检查它是否为空?
问问题
2618 次
2 回答
5
假设您在内部存储中创建了目录,您可以像这样获取目录中子对象的数量
File dir = context.getDir("somePath", Context.MODE_PRIVATE);
File[] children = dir.listFiles();
if(children.length > 0)
{
// the directory is not empty
}
else
{
// the directory is empty.
}
这只是一个快速示例代码。更好的方法是使用自定义排除 self 和 parent 别名FileFilter
with dir.listFiles()
,因为我不确定它们是否会始终从结果列表中排除。
于 2013-03-06T16:57:47.733 回答
2
下面的代码将检查一个文件夹是否已经存在,如果不存在,则创建一个,如果创建一个错误,则会警告您:
// check if appfolder is created and if not through an
// exception
File path = new File("yourDir");
if (!path.exists()) {
if (!path.mkdirs()) {
try {
throw new IOException(
"Application folder can not be created. Please check if your memory is writable and healthy and then try again.");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
} else {
Log.i("app", "directory is: " + path.getPath());
}
exists()
检查路径是否存在并path.exists()
简单地为您创建一个。
于 2013-03-06T16:53:35.040 回答