package elte.java2_utikalauz5.io; import java.io.*; import java.awt.event.*; /** Szövegszerkesztő. @link.forrásfájl {@docRoot}/../data/io/src Editor.java @link.letöltés {@docRoot}/../data/io Editor.jar @since Java 2 Útikalauz programozóknak 1.3 */ public class Editor extends java.awt.Frame implements ActionListener { /** Verziószám */ private final static long serialVersionUID = 15L; private final java.awt.TextArea szöveg = new java.awt.TextArea(); private final java.awt.TextField fájlnév = new java.awt.TextField(); private final java.awt.Button betölt = new java.awt.Button("Betölt"); private final java.awt.Button elment = new java.awt.Button("Elment"); private void beolvas( String fájlnév ) throws IOException { String sorvége = System.getProperty("line.separator"); BufferedReader r = new BufferedReader( new FileReader(fájlnév) ); try { StringBuilder újSzöveg = new StringBuilder(); String sor; while ((sor=r.readLine())!= null) újSzöveg.append(sor).append(sorvége); szöveg.setText( újSzöveg.toString() ); } finally { r.close(); } } private void kiír( String fájlnév ) throws IOException { PrintWriter w = new PrintWriter(new FileWriter(fájlnév)); try { w.print(szöveg.getText()); } finally { w.close(); } } public void actionPerformed( ActionEvent ae ){ try { if ( ae.getSource() == betölt ) beolvas(fájlnév.getText()); else {assert ae.getSource() == elment; kiír(fájlnév.getText()); } } catch( IOException ioe ){ ioe.printStackTrace(); } } public Editor() { addWindowListener( new WindowAdapter(){ public void windowClosing( WindowEvent e ){ setVisible(false); dispose(); System.exit(0); } } ); add(szöveg,java.awt.BorderLayout.CENTER); java.awt.Panel dél = new java.awt.Panel(), gombok = new java.awt.Panel(); add(dél,java.awt.BorderLayout.SOUTH); dél.setLayout(new java.awt.BorderLayout()); dél.add(fájlnév,java.awt.BorderLayout.CENTER); dél.add(gombok,java.awt.BorderLayout.EAST); gombok.setLayout(new java.awt.GridLayout(1,0)); gombok.add(betölt); gombok.add(elment); betölt.addActionListener( this ); elment.addActionListener( this ); } public static void main( String args[] ){ java.awt.Frame szövegszerkesztő = new Editor(); szövegszerkesztő.setSize(400,300); szövegszerkesztő.setVisible(true); } }