Java for Dummies から学習していますが、これらのエラーが発生する理由がわかりません。私はいくつかの情報をググった。
java.util.InputMismatchException
間違ったタイプの値を読みたいということです。たとえば、ファイルは次のようになります。
2543
Robert
そして、プログラムが最初の行の文字列から取得するように強制します。私の意見では、ファイル内のすべてが正しく見えます。自分のコードを本のサンプル コードと比較しましたが、間違いは見つかりませんでした。
私はネットビーンズを使用しています。
ファイル「EmployeeInfo」は次のようになります。
Angela
nurse
2000.23
メインクラス:
import java.util.Scanner;
import java.io.File;
import java.io.IOException;
public class DoPayroll {
public static void main(String[] args) throws IOException{
Scanner diskScanner = new Scanner (new File("EmployeeInfo.txt"));
payOneEmployee(diskScanner);
}
static void payOneEmployee(Scanner aScanner)
{
Employee anEmployee = new Employee();
anEmployee.setName(aScanner.nextLine());
anEmployee.SetJobTitle(aScanner.nextLine());
anEmployee.cutCheck(aScanner.nextDouble());
aScanner.nextLine();
}
}
クラス:
public class Employee {
private String name;
private String jobTitle;
public void setName(String mName)
{
name = mName;
}
public String GetName()
{
return name;
}
public void SetJobTitle(String mJobTitle)
{
jobTitle = mJobTitle;
}
public String GetJobTitle()
{
return jobTitle;
}
public void cutCheck(double amountPaid)
{
System.out.printf("Pay to the order of %s", name);
System.out.printf("%s ***€", jobTitle);
System.out.printf("%,.2f\n", amountPaid);
}
}