Android 尝试从空数组读取,但数组包含多个文件名
我的应用程序运行得很好,但在重新安装后,我得到了一个错误,即“尝试获取空数组的长度”,而我的dob文件夹中充满了以pi_开头的文件。现在我得到的文件是空的 有人能帮我解释一下错误是什么吗 谢谢Android 尝试从空数组读取,但数组包含多个文件名,android,Android,我的应用程序运行得很好,但在重新安装后,我得到了一个错误,即“尝试获取空数组的长度”,而我的dob文件夹中充满了以pi_开头的文件。现在我得到的文件是空的 有人能帮我解释一下错误是什么吗 谢谢 File path = new File(Environment.getExternalStorageDirectory().toString() + "/dob"); if (path.exists()) { Toast.makeText(this, "Dob folder e
File path = new File(Environment.getExternalStorageDirectory().toString() + "/dob");
if (path.exists()) {
Toast.makeText(this, "Dob folder exists", Toast.LENGTH_SHORT).show();
} else {
Toast.makeText(this, "Dob folder does not exist", Toast.LENGTH_SHORT).show();
}
File[] files = path.listFiles();
if (files != null) {
Toast.makeText(this, "files length: " + files.length, Toast.LENGTH_SHORT).show();
piStarters = new String[files.length];
int db = 0;
for (File file : files) {
Toast.makeText(this, ":" + file.toString() + ":", Toast.LENGTH_LONG).show();
if (file.getName().startsWith("pi_")) {
piStarters[db] = file.getName();
Toast.makeText(this, "I need this (pistarter): " + piStarters[db], Toast
.LENGTH_SHORT)
.show();
db++;
}
}
} else {
Toast.makeText(this, "files - Null ", Toast
.LENGTH_SHORT).show();
}
舱单:
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
您需要实现才能访问手机存储否则android OS marshmallow及以上版本将不允许您的应用访问存储
因此,您需要实现存储访问的运行时权限模型
您是否实现了运行时权限?是的,我的清单文件包含:您的android操作系统是什么?android 6.0是版本我很高兴我能提供帮助,很高兴编码