Java程序,打开一个包含整数的文件,并在输出对话框中打印,计数和显示.(使用 JOptionPane)



我必须创建一个java程序来打开一个包含整数的文件。输入对话框询问输入文件的名称,然后输出对话框显示从数据文件中读取的值(每个值位于不同的行上(,然后显示文件中的值数。我很困惑 至于我的代码中缺少什么。出现输入对话框,但之后我完全卡住了。

import java.io.*;
import javax.swing.*;
import java.util.Scanner;
public class prob2
{
public static void main (String [] args) throws IOException
{
String name, out="", out2="" ;
int quantity=0, val; 
name=JOptionPane.showInputDialog("Enter the name of the file to be opened: ");
Scanner inputFile= new Scanner(new FileReader(name));
while(inputFile.hasNextInt());
{
val=inputFile.nextInt();
out= val+"n";
quantity++; 
}
JOptionPane.showMessageDialog(null, 
val + quantity);
inputFile.close();
}
}

你最初的问题就在这里

while(inputFile.hasNextInt()); // <- Or here actually...

这基本上是设置一个无限循环,而不是执行你想要的颂歌块

首先删除行尾的;...

while(inputFile.hasNextInt())
{
val=inputFile.nextInt();
out= val+"n";
quantity++; 
}

一旦你有了它,你就会改变

JOptionPane.showMessageDialog(null,
val + quantity);

JOptionPane.showMessageDialog(null,
out + quantity);

克服编译器错误

最后,您将需要更改...

out = val + "n";

在您的while-loop

out += val + "n";

以便您实际连接结果

(是的,我们应该使用StringBuilder,但我认为我们现在可以让那张幻灯片(

您必须收集正在阅读的输入以及以后要打印的输入。

例如,通过创建一个 StringBuilder 实例并附加您希望呈现给用户的内容。

当你完成阅读时,你将builder.toString((作为消息传递给另一个选项痛苦。

最新更新