.txt 파일에서 데이터를 읽는 데 문제가 있습니다. 응용 프로그램을 실행할 때 오류 메시지가 나타나고 응용 프로그램이 다운되면 텍스트 파일을 읽거나 InputStream에서 스캐너로 변환하는 것으로 간주됩니다. 나는 다음과 같은 코드가 있습니다 : InputStream 및 스캐너를 사용하여 .txt 파일에서 데이터 읽기 android
FileExaminer a = new FileExaminer();
FileExaminer b = new FileExaminer();
FileExaminer c = new FileExaminer();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
try{
readFile.runMethods();
} catch (Exception e) {
System.out.println("Error in Main");
}
}
이
public InputStream input;
public Scanner file;
AssetManager assetManager = getAssets();
public String a, b, c;
public void runMethods() {
openFile();
readFile();
closeFile();
}
public void openFile() {
try{
input = getAssets().open("numbers.txt");
file = new Scanner(input);
} catch(Exception e) {
System.out.println("error");
}
}
public void readFile() {
while (file.hasNext()) {
a = file.next();
b = file.next();
c = file.next();
System.out.printf("%s %s %s/n", a,b,c);
}
}
public void closeFile() {
file.close();
}
내 오류 로그가 이것이다 : 사전에
07-01 02:10:05.113: D/AndroidRuntime(2174): Shutting down VM
07-01 02:10:05.173: W/dalvikvm(2174): threadid=1: thread exiting with uncaught exception (group=0xb1cf6b20)
07-01 02:10:05.213: E/AndroidRuntime(2174): FATAL EXCEPTION: main
07-01 02:10:05.213: E/AndroidRuntime(2174): Process: com.aghgb.pokedex, PID: 2174
07-01 02:10:05.213: E/AndroidRuntime(2174): java.lang.RuntimeException: Unable to instantiate activity ComponentInfo{com.aghgb.pokedex/com.aghgb.pokedex.Main}: java.lang.NullPointerException
07-01 02:10:05.213: E/AndroidRuntime(2174): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2121)
07-01 02:10:05.213: E/AndroidRuntime(2174): at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2245)
07-01 02:10:05.213: E/AndroidRuntime(2174): at android.app.ActivityThread.access$800(ActivityThread.java:135)
07-01 02:10:05.213: E/AndroidRuntime(2174): at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1196)
07-01 02:10:05.213: E/AndroidRuntime(2174): at android.os.Handler.dispatchMessage(Handler.java:102)
07-01 02:10:05.213: E/AndroidRuntime(2174): at android.os.Looper.loop(Looper.java:136)
07-01 02:10:05.213: E/AndroidRuntime(2174): at android.app.ActivityThread.main(ActivityThread.java:5017)
07-01 02:10:05.213: E/AndroidRuntime(2174): at java.lang.reflect.Method.invokeNative(Native Method)
07-01 02:10:05.213: E/AndroidRuntime(2174): at java.lang.reflect.Method.invoke(Method.java:515)
07-01 02:10:05.213: E/AndroidRuntime(2174): at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:779)
07-01 02:10:05.213: E/AndroidRuntime(2174): at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:595)
07-01 02:10:05.213: E/AndroidRuntime(2174): at dalvik.system.NativeStart.main(Native Method)
07-01 02:10:05.213: E/AndroidRuntime(2174): Caused by: java.lang.NullPointerException
07-01 02:10:05.213: E/AndroidRuntime(2174): at android.content.ContextWrapper.getAssets(ContextWrapper.java:83)
07-01 02:10:05.213: E/AndroidRuntime(2174): at com.aghgb.pokedex.FileExaminer.<init>(FileExaminer.java:13)
07-01 02:10:05.213: E/AndroidRuntime(2174): at com.aghgb.pokedex.Main.<init>(Main.java:7)
07-01 02:10:05.213: E/AndroidRuntime(2174): at java.lang.Class.newInstanceImpl(Native Method)
07-01 02:10:05.213: E/AndroidRuntime(2174): at java.lang.Class.newInstance(Class.java:1208)
07-01 02:10:05.213: E/AndroidRuntime(2174): at android.app.Instrumentation.newActivity(Instrumentation.java:1061)
07-01 02:10:05.213: E/AndroidRuntime(2174): at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2112)
07-01 02:10:05.213: E/AndroidRuntime(2174): ... 11 more
감사합니다. 이 방법을 사용할 수있는 .txt 인 파일을 읽기 위해
FileExaminer의 13 행은 무엇입니까? –