Java Android文件系统
我一直在努力让它工作,但我在某个地方绊倒了 这是整件事的主要来源。logcat的结果…有些是多余的。我在onCreate上面有“startingDirectory”,所以我复制并删除了私有目录Java Android文件系统,java,android,filesystems,media,Java,Android,Filesystems,Media,我一直在努力让它工作,但我在某个地方绊倒了 这是整件事的主要来源。logcat的结果…有些是多余的。我在onCreate上面有“startingDirectory”,所以我复制并删除了私有目录 String startingDirectory = Environment.getExternalStorageDirectory().getAbsolutePath(); String directory = startingDirectory; if (Environment.get
String startingDirectory = Environment.getExternalStorageDirectory().getAbsolutePath();
String directory = startingDirectory;
if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED) == false) {
Log.d(TAG, "Media is not mounted.");
} else {
Log.d(TAG, "Loading File Directory.");
Log.d(TAG, "Directory listing for " + directory);
File path = new File(directory);
//File path = new File(directory);
if (path.isDirectory()) {
if (path.canRead()) {
Log.d(TAG, "Readable directory");
} else {
Log.d(TAG, "Non-readable directory");
if (Environment.getExternalStorageState().equals(Environment.MEDIA_MOUNTED)) {
Log.d(TAG, "Media is mounted");
} else {
Log.d(TAG, "Media is not mounted");
}
}
} else {
Log.d(TAG, "Is not a directory.");
}
}
这是整个事件的记录。。。
07-13 01:13:45.705 4361-4361/? D/main活动:加载文件目录。
07-13 01:13:45.705 4361-4361/? D/MainActivity:/storage/emulated/0的目录列表
07-13 01:13:45.705 4361-4361/? D/MainActivity:不可读目录
07-13 01:13:45.706 4361-4361/? D/main活动:媒体已装入
我正试图获取当前目录(staringDirectory)的目录结构并将其放入一个类中…但它似乎并没有停留在不可读的状态上这是我的无权限方法,每当我修改某个文件和目录的权限时,都使用java.io.File类的setWritable和setReadable方法。 嗯,我仍然有一条消息,但它对我有效
public static void permitFileAcess(final File file) {
if (!file.setWritable(true, true)) {
log.e(new Object[] { "Could not set Writable permissions" });
}
if (!file.setReadable(true, true)) {
log.e(new Object[] { "Could not set Readable permissions" });
}
if (!file.setExecutable(true, true)) {
log.e(new Object[] { "Could not set Executable permissions" });
}
}
因此,如果要创建文件,请在操作之前使用它
private static boolean createFile(File parent, String fileName, boolean createDir) {
boolean returnValue = false;
if (parent.isDirectory()) {
File newFile = new File(parent.getAbsolutePath(), fileName);
permitFileAcess(newFile);
if (createDir) {
returnValue = newFile.mkdir();
} else {
try {
returnValue = newFile.createNewFile();
} catch (IOException e) {
e.printStackTrace();
}
}
}
return returnValue;
}
祝你好运。我正在尝试检索特定目录中的所有文件和目录。制作一个简单的文件管理器。如果我看不到该文件,我就不知道加载哪个文件。我没有添加文件权限,即使在清单中,我允许它们。一定要喜欢安卓+不管怎样,我感谢你的帮助