我在assets
文件夾中有一個文件夾,名稱爲s1
。其中大約有一百個文本文件。我想要統計該文件夾中有多少文本文件。計算資產子文件夾中的文件
應用程序崩潰,在這種錯誤啓動:`
Caused by: java.lang.NullPointerException: Attempt to get length of null array
這裏是MainActivity
代碼:
Integer fileCount = 0;
fileCount = Integer.valueOf(new File("./assets/s1/").listFiles().length);
for(int i=0;i<fileCount;i++) {
Button btn = new Button(this);
btn.setId(i+1);
btn.setText("button "+(i+1));
btn.setLayoutParams(lprams);
final int index = i;
btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
Log.i("TAG", "The index is" + index);
}
});
dynamicview.addView(btn);
}
如何解決呢?
您是否嘗試過調試?例如,單獨調用第二行的方法,看看'new File(「..」)'的值是什麼,然後是'.listFiles()'的值等等。 –
您無法將文件類用於資產中的文件。而且使用的路徑也是錯誤的。你最好谷歌如何從資產中讀取文件。或者如何列出它們。 – greenapps