使用外部目标列出 Libgdx 目录中的所有文件
List all files in directory in Libgdx using external destination
我目前正在尝试使用 libgdx 文件系统列出目录中的所有文件,当我进入目录时,我想查看列表功能开始 return 列表长度为 0,尽管我确定它不是空的。
我在 android phone 上进行测试,并逐步深入到 phone。这些是我用来检查列表以及它 return 编辑了多少项目的行。请让我知道我做错了什么或解决方法谢谢。
Gdx.files.absolute(".").list().length() //Returned 63
Gdx.files.absolute("./storage").list().length //Returned 4
Gdx.files.absolute(./storage/emulated).list().length //Returned 0
同样,路径 ./storage/emulated 绝对不是空的。我需要申请特别许可才能进入该区域吗?请 lmk。提前致谢。
开始之前 如果在 运行 时间未获得用户许可,请明确 Android 您的 targetSdkVersion 小于 23,然后再继续与您的文件 IO 相关的任何工作。对于当前的 targetSdkVersion 检查 android build.gradle
文件的 defaultConfig,如果不存在则检查 AndroidManifest.xml
文件。
将此权限添加到 AndroidMainfest.xml
文件。
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
我知道外部目标是我们保存自己的数据(如视频、音乐等)的地址。
Gdx.files.getExternalStoragePath()
在 Android 中提供路径 /storage/emulated/0/
和桌面上的用户目录,如下所示 C:\Users\Abhishek Aryan\
我们想要外部存储中的所有文件(外部存储并不意味着 SD 卡)。 /storage/emulated/0/
表示内置存储。
FileHandle dirHandle = Gdx.files.external("/");
for (FileHandle entry: dirHandle.list()) {
System.out.println(entry.toString());
}
通过递归,您可以获得存储中的所有文件和文件夹。
我目前正在尝试使用 libgdx 文件系统列出目录中的所有文件,当我进入目录时,我想查看列表功能开始 return 列表长度为 0,尽管我确定它不是空的。
我在 android phone 上进行测试,并逐步深入到 phone。这些是我用来检查列表以及它 return 编辑了多少项目的行。请让我知道我做错了什么或解决方法谢谢。
Gdx.files.absolute(".").list().length() //Returned 63
Gdx.files.absolute("./storage").list().length //Returned 4
Gdx.files.absolute(./storage/emulated).list().length //Returned 0
同样,路径 ./storage/emulated 绝对不是空的。我需要申请特别许可才能进入该区域吗?请 lmk。提前致谢。
开始之前 如果在 运行 时间未获得用户许可,请明确 Android 您的 targetSdkVersion 小于 23,然后再继续与您的文件 IO 相关的任何工作。对于当前的 targetSdkVersion 检查 android build.gradle
文件的 defaultConfig,如果不存在则检查 AndroidManifest.xml
文件。
将此权限添加到 AndroidMainfest.xml
文件。
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
我知道外部目标是我们保存自己的数据(如视频、音乐等)的地址。
Gdx.files.getExternalStoragePath()
在 Android 中提供路径 /storage/emulated/0/
和桌面上的用户目录,如下所示 C:\Users\Abhishek Aryan\
我们想要外部存储中的所有文件(外部存储并不意味着 SD 卡)。 /storage/emulated/0/
表示内置存储。
FileHandle dirHandle = Gdx.files.external("/");
for (FileHandle entry: dirHandle.list()) {
System.out.println(entry.toString());
}
通过递归,您可以获得存储中的所有文件和文件夹。