前提
エラーメッセージから数値に変換しようとしている文字列の形式が正しくないこと、13行目に問題があることは分かりましたが、どう修正したら良いのか分かりません。
実現したいこと
txtファイルを読み込んで、記載された数字の合計値を出したい。
下記、txtファイルの内容です。
15
20
37
58
発生している問題・エラーメッセージ
Exception in thread "main" java.lang.NumberFormatException: null
at java.base/java.lang.Integer.parseInt(Integer.java:614)
at java.base/java.lang.Integer.parseInt(Integer.java:770)
at Sum.main(Sum.java:13)
該当のソースコード
java
1import java.io.*; 2class Sum 3{ 4 public static void main(String[]args) 5 { 6 try{ 7 BufferedReader file = new BufferedReader(new FileReader(args[0])); //引数で指定されたファイルから入力する処理 8 String str = file.readLine(); 9 int num = Integer.parseInt(str); 10 int sum = num; 11 while (str != null){ //ファイルの読み取りが終わるまで繰り返す 12 str = file.readLine(); 13 (13行目) num = Integer.parseInt(str); 14 sum += num; 15 } 16 file.close(); 17 System.out.println(sum); 18 } 19 catch(IOException e){ 20 System.out.println("入出力エラーです。"); 21 } 22 } 23}
試したこと
エラーについて検索したが、改善方法がわからなかった。
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答1件
あなたの回答
tips
プレビュー