0

我正在尝试列出 /data/dalvik-cache 文件夹中的所有文件,但我不断收到NullPointerException

List<String> dalvikFiles = new ArrayList<String>();
        for (String dir : dalvikPath) {
            File folder = new File(dir);
            File list[] = folder.listFiles();
            for( int i=0; i< list.length; i++)
            {
                dalvikFiles.add( list[i].getName() );
            }
        }

该数组dalvikPath包含/data/dalvik-cache

我在尝试列出之前提出请求su,我认为我拥有清单中的所有权限。

4

2 回答 2

0
 I think you need to check directory is exist or not . then you can get list of files

 File folder = new File(dir);

    if(folder.exists()){
        File list[] = folder.listFiles();
            if(list.length>0{
                 for( int i=0; i< list.length; i++){
                  }


            }           

    }else{

    }
于 2012-11-17T04:01:56.110 回答
0

好的,所以我修改了我的代码,现在我没有 javanullpointer 但我没有在文件夹中“找到”文件......

List<String> dalvikFiles = new ArrayList<String>();
        for (String dir : dalvikPath) {
            log.append("Reading " + dir + "\n");
            File folder = new File(dir);
            if (folder.exists() && folder.isDirectory()){
                try{
                    File list[] = folder.listFiles();
                    for( int i=0; i< list.length; i++)
                    {
                        dalvikFiles.add( list[i].getName().toString() );
                        log.append(list[i].getName().toString() +"\n");
                    }
                }
                catch ( Exception e) {

                }
            }
            else {
                log.append("Folder " + dir + "doesn't exist.\n");
            }
于 2012-11-17T04:34:35.330 回答