我在按钮点击事件上执行此操作 employee类有一个toString方法,它可以显示制作该对象所需的所有内容。 一旦它使用FileWriter打印zipcode,就会显示第一个0到位。
private class ButtonListenerSubmit implements ActionListener
{
public void actionPerformed (ActionEvent event)
{
int phone, zipcode;
double pay;
String phoneString, zipcodeString, payString;
phoneString = phoneNumberTF.getText();
zipcodeString = zipcodeTF.getText();
payString = payRateTF.getText();
phone = Integer.parseInt(phoneString);
zipcode = Integer.parseInt(zipcodeString);
pay = Double.parseDouble(payString);
Employee one = new Employee(fNameTF.getText(), lNameTF.getText(), addressTF.getText(), townTF.getText(), stateTF.getText(), zipcode, phone, pay);
try {
PrintWriter out = new PrintWriter(new FileWriter(one.lastName + one.firstName + ".txt"));
out.println(one);
out.close();
} catch(IOException e) {
}
}
}
答案 0 :(得分:0)
问题是,您的zipcode
是一个int
整数,但不会012345
他们会自动将其截断为12345
。
尝试一个字符串。
答案 1 :(得分:0)
制作邮政编码的数据类型字符串
答案 2 :(得分:0)
您应该在zipcodeString
类初始化中使用Employee
作为参数。如果您在使用phone
变量时添加以0开头的电话号码,也不会获得完整的电话号码。因为如果它是第一个字符,则整数避免为0。因此,请使用zipecodeString
和phoneString
获取完整输入。
试试这个:
Employee one = new Employee(fNameTF.getText(), lNameTF.getText(), addressTF.getText(), townTF.getText(), stateTF.getText(), zipcodeString, phoneString, pay);
答案 3 :(得分:0)
您应该在Employee.toString
方法中为您的邮政编码字段添加填充。替换这个:
... + "ZipCode: " + zipCode + ... // or whatever code you have for this
有了这个:
... + "ZipCode: " + String.format("%s5", zipCode).replaceAll(" ", "0") + ...