Чтение файла Scanner'om - Java
Формулировка задачи:
Приветствую.
Как сделать так, чтобы при сканировании файла информация добавлялась сразу а не после перезагрузки приложения?
Я просто ввожу что-либо в поле ввода, сохраняю в файл, нажимаю просмотр, но в открывшемся новом окне то, что я написал в полее ввода, не отображается, оно отобразится только после перезагрузки приложения. как решить, незнаю.
package Test1; import javax.swing.JFrame; public class Test{ static Test2 test2 = new Test2("Test 2"); static Test3 test3 = new Test3("Test 3"); public static void main(String[] args) { Play(); } public static void Play(){ test2.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); test2.setSize(100, 120); test2.setVisible(true); test2.setResizable(false); test2.setLocationRelativeTo(null); } public void Winf(){ test3.setDefaultCloseOperation(JFrame.DO_NOTHING_ON_CLOSE); test3.setSize(100, 120); test3.setVisible(true); test3.setResizable(false); test3.setLocationRelativeTo(null); } }
package Test1; import java.awt.FlowLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.File; import java.io.FileWriter; import javax.swing.*; public class Test2 extends JFrame{ private JButton b1 = new JButton("save"); private JButton b2 = new JButton("exit"); private JButton b3 = new JButton("preview"); private JTextField t1 = new JTextField(10); TtTtT tt = new TtTtT(); Test test = new Test(); File file = new File("src/test.txt"); public Test2(String s){ super(s); setLayout(new FlowLayout()); b3.setEnabled(false); add(t1); add(b3); add(b1); add(b2); b1.addActionListener(tt); b2.addActionListener(tt); b3.addActionListener(tt); } public class TtTtT implements ActionListener{ @Override public void actionPerformed(ActionEvent ae) { try{ if(ae.getSource() == b1){ String s1 = t1.getText(); try{ // записываем введенное в test.txt FileWriter trt = new FileWriter(file); trt.write(s1); trt.close(); }catch(Exception r){ r.printStackTrace(); } //t1.setEditable(false); b3.setEnabled(true); } if(ae.getSource() == b2){ System.exit(0); } if(ae.getSource() == b3){ setVisible(false); dispose(); test.Winf(); } }catch(Exception ex){ ex.printStackTrace(); } } } }
package Test1; import java.awt.FlowLayout; import java.awt.event.ActionEvent; import java.awt.event.ActionListener; import java.io.File; import java.util.Scanner; import javax.swing.*; public class Test3 extends JFrame{ private JLabel l1 = new JLabel(); private JButton b1 = new JButton("exit"); private JButton b2 = new JButton("back"); ioioio io = new ioioio(); Test test = new Test(); private String ss = ""; public Test3(String s){ super(s); setLayout( new FlowLayout()); try{ Scanner scn = new Scanner(new File("src/test.txt")); while(scn.hasNext()) ss += scn.nextLine(); l1.setText(ss); scn.close(); }catch(Exception b){ b.printStackTrace(); } add(l1); add(b1); add(b2); b1.addActionListener(io); b2.addActionListener(io); } public class ioioio implements ActionListener{ @Override public void actionPerformed(ActionEvent ae) { try{ if(ae.getSource() == b1){ System.exit(0); } if(ae.getSource() == b2){ setVisible(false); dispose(); test.Play(); } }catch(Exception ex){ ex.printStackTrace(); } } } }
Решение задачи: «Чтение файла Scanner'om»
textual
Листинг программы
public void Winf(String s1){ ....... test3.l1.setText(s1); ....... }
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д