尝试在 GUI 中使用文件捕获 java
Posted
技术标签:
【中文标题】尝试在 GUI 中使用文件捕获 java【英文标题】:try and catch java with files in a GUI 【发布时间】:2015-05-07 22:05:40 【问题描述】:private class PrintButtonListener implements ActionListener
public void actionPerformed(ActionEvent e)
if (e.getSource() == radio)
try
File file = new File("Birds.txt");
Scanner inputFile = new Scanner(file);
area.setText(inputFile.toString());
catch(Exception ex)
System.out.println("File not found!");
我需要显示 2 个不同的文件。每个文件都有一个关联的单选按钮。单击按钮后,文件的内容必须显示在 GUI 界面上。我真的需要这个帮助!
private JRadioButton radio; // first radio button
private JRadioButton radio2; // second radio button
private JRadioButton radio3; // third radio button
private JButton button; // button to gain access to whatever option was selected
private JPanel panel; // the panel
private JTextArea area;
private ButtonGroup buttonGroup;
public BirdTest2() // GUI constructor
super();
setSize(2000,950);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setVisible(true);
buildPanel();
add(panel);
public void buildPanel() // building the panel for the GUI
panel = new JPanel();
radio = new JRadioButton("Display all birds!");
radio2 = new JRadioButton("Display foreign birds only!");
radio3 = new JRadioButton("Display non-foreign birds only!");
button = new JButton("Click me!");
button.addActionListener(new PrintButtonListener());
buttonGroup = new ButtonGroup();
buttonGroup.add(radio);
buttonGroup.add(radio2);
buttonGroup.add(radio3);
area = new JTextArea();
panel.add(radio);
panel.add(radio2);
panel.add(radio3);
panel.add(button);
panel.add(area);
这是我上面的窗口、按钮、单选按钮的代码。帮助将不胜感激!如果您需要任何其他信息,请告诉我:)
【问题讨论】:
我确实制作了 3 个单选按钮,但如果我至少可以让 2 个工作,那就没问题了。一个我需要使用链表中的删除方法,这将是第三个。 这段代码的主类是什么? 我现在只有: BirdTest2 app = new BirdTest2(); 你能出示这个类的签名吗:public class BirdTest2 ...
【参考方案1】:
单击按钮后,文件的内容必须显示在 GUI 界面上。
要使用 Scanner 读取文件,您必须使用您正在使用的 Scanner 对象定义的方法显式迭代文件的所有行(当前在 actionPerformed 中使用的 toString
将只返回一个表示 Scanner 的字符串对象,不一定是文件的内容)。
Scanner inputFile = new Scanner(file);
while ( inputFile.hasNextLine() )
area.append(inputFile.nextLine());//append the line to the JTextArea
area.append("\n");//append any new lines as they are ommitted with Scanner.nextLine
您可以在actionPerformed方法中检查选择了哪个JCheckBox,以根据选择的JCheckBox确定要打开哪个文件。
【讨论】:
谢谢你,我会试试这个,让你知道我的结果:) 没有显示,可能是什么原因?以上是关于尝试在 GUI 中使用文件捕获 java的主要内容,如果未能解决你的问题,请参考以下文章