テキスト ファイルから整数と 2 つの double を読み込もうとしています。私の問題の短い例のデモを書きました。
import java.io.File;
import java.io.FileNotFoundException;
import java.util.Scanner;
public class Test {
public static void main(String[] args) {
int q = 0;
double w = 0, e = 0;
Scanner s = null;
try {
s = new Scanner(new File(args[0]));
while(s.hasNext()) {
q = s.nextInt();
w = s.nextDouble();
e = s.nextDouble();
}
System.out.println("1: " + q + "\n2: " + w + "\n3: " + e);
} catch(FileNotFoundException e1) {
e1.printStackTrace();
System.out.println(e1.getMessage());
} finally {
if(s != null) {
s.close();
}
}
}
}
それは私に
Exception in thread "main" java.util.InputMismatchException
at java.util.Scanner.throwFor(Unknown Source)
at java.util.Scanner.next(Unknown Source)
at java.util.Scanner.nextDouble(Unknown Source)
at Test.main(Test.java:14)
スキャナーが double を読み取る際に問題が発生したと思いますが、その理由がわかりません。
私のテキストファイルには以下が含まれています:
3000 30.3 10.4