안녕하세요.

항상 많은 도움을 받는 3000cc 입니다.


아래와 같은 코드로 실행시 openFileInput시 NullPointerError가 발생합니다.

message.txt 파일은 files 아래에 분명 존재하고 내용도 있습니다.


에러가 나는 원인을 알려주시면 대단히 감사하겠습니다. ^-^)


...

final SmsManager sms = SmsManager.getDefault();

...

try{

sms.sendTextMessage(phoneNumber[1], null, getMessage(), null, null);

}catch(Exception e){e.printStackTrace();}

...


public String getMessage() throws IOException{

// /data/data/com.android.besafe/message.txt 존재

String strFileName = "message.txt";

StringBuffer strBuffer = new StringBuffer();

// 아래에서 NullPointerException 에러가 발생합니다.

FileInputStream fis = openFileInput(strFileName.toString());

DataInputStream dataIO = new DataInputStream(fis);

String strLine = null;

while((strLine = dataIO.readLine()) != null)

strBuffer.append(strLine + "\n");

dataIO.close();

fis.close(); 

return strBuffer.toString(); 

}


[에러코드]

12-13 08:38:10.815: W/System.err(3475): java.lang.NullPointerException

12-13 08:38:10.815: W/System.err(3475): at android.content.ContextWrapper.openFileInput(ContextWrapper.java:152)

12-13 08:38:10.815: W/System.err(3475): at com.android.besafe.MyResources.getMessage(MyResources.java:86)

12-13 08:38:10.825: W/System.err(3475): at com.android.besafe.MyResources.sendSMS(MyResources.java:72)

12-13 08:38:10.825: W/System.err(3475): at com.android.besafe.BeSafeActivity$2.onClick(BeSafeActivity.java:47)

12-13 08:38:10.825: W/System.err(3475): at android.view.View.performClick(View.java:2485)

12-13 08:38:10.825: W/System.err(3475): at android.view.View$PerformClick.run(View.java:9080)

12-13 08:38:10.825: W/System.err(3475): at android.os.Handler.handleCallback(Handler.java:587)

12-13 08:38:10.825: W/System.err(3475): at android.os.Handler.dispatchMessage(Handler.java:92)

12-13 08:38:10.825: W/System.err(3475): at android.os.Looper.loop(Looper.java:123)

12-13 08:38:10.825: W/System.err(3475): at android.app.ActivityThread.main(ActivityThread.java:3647)

12-13 08:38:10.835: W/System.err(3475): at java.lang.reflect.Method.invokeNative(Native Method)

12-13 08:38:10.835: W/System.err(3475): at java.lang.reflect.Method.invoke(Method.java:507)

12-13 08:38:10.835: W/System.err(3475): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:839)

12-13 08:38:10.835: W/System.err(3475): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:597)

12-13 08:38:10.835: W/System.err(3475): at dalvik.system.NativeStart.main(Native Method)