마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

안드로이드 오류....로그좀 봐주세요...

0 추천
05-21 01:31:49.291: W/dalvikvm(1173): threadid=1: thread exiting with uncaught exception (group=0xb1a57ba8)
05-21 01:31:49.321: E/AndroidRuntime(1173): FATAL EXCEPTION: main
05-21 01:31:49.321: E/AndroidRuntime(1173): Process: com.example.jiminnn, PID: 1173
05-21 01:31:49.321: E/AndroidRuntime(1173): java.lang.NullPointerException
05-21 01:31:49.321: E/AndroidRuntime(1173): at com.example.jiminnn.FileFinderActivity$1.onClick(FileFinderActivity.java:42)
05-21 01:31:49.321: E/AndroidRuntime(1173): at android.view.View.performClick(View.java:4438)
05-21 01:31:49.321: E/AndroidRuntime(1173): at android.view.View$PerformClick.run(View.java:18422)
05-21 01:31:49.321: E/AndroidRuntime(1173): at android.os.Handler.handleCallback(Handler.java:733)
05-21 01:31:49.321: E/AndroidRuntime(1173): at android.os.Handler.dispatchMessage(Handler.java:95)
05-21 01:31:49.321: E/AndroidRuntime(1173): at android.os.Looper.loop(Looper.java:136)
05-21 01:31:49.321: E/AndroidRuntime(1173): at android.app.ActivityThread.main(ActivityThread.java:5017)
05-21 01:31:49.321: E/AndroidRuntime(1173): at java.lang.reflect.Method.invokeNative(Native Method)
05-21 01:31:49.321: E/AndroidRuntime(1173): at java.lang.reflect.Method.invoke(Method.java:515)
05-21 01:31:49.321: E/AndroidRuntime(1173): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
05-21 01:31:49.321: E/AndroidRuntime(1173): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
05-21 01:31:49.321: E/AndroidRuntime(1173): at dalvik.system.NativeStart.main(Native Method)
http://snix.tistory.com/419 sdcard목록을 리스트로 뛰우는 코드인데요 제가 버튼이라 editText를 추가해서 파일검색할라고 이코드를 삽입했어요btn.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
File[] tempFiles = new File("/sdcard").listFiles();
String str = edt.getText().toString();
for(int i=0;i<tempFiles.length;i++){
a[i] = tempFiles[i].getName();
}
for(int i=0;i<a.length;i++){
if(a[i].contains(str)){
fileNameList.add(a[i]);
}
}
}
});
버튼누르면 오류떠요... 조언좀
지미니v (1,080 포인트) 님이 2014년 5월 21일 질문

3개의 답변

+2 추천
listFiles()할때 경로가 잘못되었거나 폴더가 아닌경우 혹은 파일이 없을 경우 null이 됩니다만...tempFiles를 먼저 null검사하고 소스 실행시키는게 좋을 듯합니다.
YeonMin (17,860 포인트) 님이 2014년 5월 21일 답변
0 추천
FATAL EXCEPTION: main
Process: com.example.jiminnn, PID: 1173
java.lang.NullPointerException
 at com.example.jiminnn.FileFinderActivity$1.onClick(FileFinderActivity.java:42)
 at android.view.View.performClick(View.java:4438)
 at android.view.View$PerformClick.run(View.java:18422)
 at android.os.Handler.handleCallback(Handler.java:733)
 at android.os.Handler.dispatchMessage(Handler.java:95)
 at android.os.Looper.loop(Looper.java:136)
 at android.app.ActivityThread.main(ActivityThread.java:5017)
 at java.lang.reflect.Method.invokeNative(Native Method)
 at java.lang.reflect.Method.invoke(Method.java:515)
 at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
 at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
 at dalvik.system.NativeStart.main(Native Method)

같은 오류 로그라도 이런 식으로 올려주면 답변하는 분들이 더 잘 도와주겠죠?

 

FileFinderActivity.java의 42번째 줄에 null 인 변수가 있다고 하네요 

 

 

쎄미 (162,410 포인트) 님이 2014년 5월 21일 답변
or(int i=0;i<=tempFiles.length;i++){ 이게 42번째 라인이네요.. ㅜㅜ
뭐가문제지 ㅜㅜ
0 추천
java.lang.NullPointerException
com.example.jiminnn.FileFinderActivity$1.onClick(FileFinderActivity.java:42)
 
FileFinderActivity.java 42번째 라인에서 NullPointerException 발생하고 있습니다만
올려주신 소스에서는 42라인이 어디인지 확인할수가 없네요;;
달팽왕 (240 포인트) 님이 2014년 5월 21일 답변
for(int i=0;i<=tempFiles.length;i++){ 이게 42번째 라인이네요.. ㅜㅜ
뭐가문제지
...