我是Android开发的新手,所以如果这是一件容易的事,请原谅我。
我想获取SD卡上目录中的所有文件并将其显示在微调器中,但我无法解决问题。 这就是我所拥有的,我甚至不知道它是否有任何好处。
//creates this directory if its not there??
File sd = new File("/sdcard/myfolder");
//gets a list of the files
File[] sdDirList = sd.listFiles();
//add them to the spinner array (this makes it crash)
for(int i=0;i<sdDirList.length;i++)
array_spinnerLoad[i] = sdDirList[i].getName();
所以我哪里错了? 任何有用的教程链接到任何地方的易用教程? 它不一定是一个微调器,只是一些我可以从
中选择的列表 谢谢你:)编辑: 它没有崩溃,但旋转器阵列没有填充
File[] sdDirList = sd.listFiles();
if (sdDirList != null)
{
array_spinnerLoad=new String[sdDirList.length];
for(int i=0;i<sdDirList.length;i++)
array_spinnerLoad[i] = sdDirList[i].getName();
}
答案 0 :(得分:4)
如果/sdcard/myfolder
不存在或不是目录,则listFiles
会返回null
。你可能正在崩溃NPE。您可以使用exists()
和isDirectory()
来诊断错误。 (另外,您可以测试sdDirList != null
。)
P.S。它可以帮助您获得更准确的答案,以发布有关崩溃的详细信息 - 例如异常。