gpt4 book ai didi

从文件读取时出现 java.util.InputMismatchException 错误,类型有什么问题?

转载 作者:行者123 更新时间:2023-12-01 14:14:11 25 4
gpt4 key购买 nike

我正在学习 Java for Dummies,但我不知道为什么会出现这些错误。我用谷歌搜索了一些信息。

java.util.InputMismatchException 意味着我想读取错误类型的值。例如文件如下所示:

2543
Robert

我强制程序从第一行字符串中获取。在我看来,我的文件中的所有内容看起来都是正确的。我将我的代码与书中的示例代码进行了比较,没有发现任何错误。

我使用 Netbeans。

文件“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();
}
}

类(class):

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);
}
}

最佳答案

你的代码完全没问题。我在《Java for Dummies》一书中遇到了同样的问题。

对我来说,问题在于文件的格式。我还不是专家,所以很抱歉无法进一步详细解释,但是抛出 InputMismatchException 因为我使用 . 来分隔小数而我的系统的标准小数点由 ,

分隔

我建议您尝试像这样格式化文件:

Angela
nurse
2000,15

关于从文件读取时出现 java.util.InputMismatchException 错误,类型有什么问题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18273588/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com