
[英]Caching objects to filesystem - java/android serialization performance
[英]Android Filesystem
我一直在努力使它正常工作,但是我在某个地方绊脚石。
这是整个事情的主要来源。 而logcat的结果...有些有些多余。 我在onCreate上方有“ startingDirectory”,因此我复制并删除了私有...
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/MainActivity: Loading File Directory. 07-13 01:13:45.705 4361-4361/? D/MainActivity: Directory listing for /storage/emulated/0 07-13 01:13:45.705 4361-4361/? D/MainActivity: Non-readable directory 07-13 01:13:45.706 4361-4361/? D/MainActivity: Media is mounted
... 07-13 01:13:45.705 4361-4361/? D/MainActivity: Loading File Directory. 07-13 01:13:45.705 4361-4361/? D/MainActivity: Directory listing for /storage/emulated/0 07-13 01:13:45.705 4361-4361/? D/MainActivity: Non-readable directory 07-13 01:13:45.706 4361-4361/? D/MainActivity: Media is mounted
07-13 01:13:45.705 4361-4361/? D/MainActivity: Loading File Directory. 07-13 01:13:45.705 4361-4361/? D/MainActivity: Directory listing for /storage/emulated/0 07-13 01:13:45.705 4361-4361/? D/MainActivity: Non-readable directory 07-13 01:13:45.706 4361-4361/? D/MainActivity: Media is mounted
我正在尝试获取当前目录的目录结构(staringDirectory)并将其放入一个类中...但是它似乎不会停留在不可读的位置
每当我修改某些文件和目录的权限时,这就是我的java.io.File类的setWritable和setReadable方法的allowFileAcess方法。 好吧,我仍然收到一条消息,但对我有用
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;
}
祝好运。
我正在尝试检索特定目录中的所有文件和目录。 制作一个简单的文件文件管理器。 如果我不查看文件,则不知道要加载哪个文件。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.