First of all, I am very basic at java. I am trying to browse a .txt file and load the contents of it, into the text area. I am completed the part, till which I receive the file from the JFileChooser, now I dont know how to do the remaining.
. . . File selFile = new File(fileChooser.getSelectedfile()); /// From here I want to load its content to a textarea "txtArea"
Advertisement
Answer
Use the read(…) and write(…) methods that are suppoorted by all Swing text components. Simple example:
import java.awt.*; import java.awt.event.*; import java.io.*; import javax.swing.*; import javax.swing.text.*; class TextAreaLoad { public static void main(String a[]) { final JTextArea edit = new JTextArea(10, 60); edit.setText("onentwonthree"); edit.append("nfournfive"); JButton read = new JButton("Read TextAreaLoad.txt"); read.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { try { FileReader reader = new FileReader( "TextAreaLoad.txt" ); BufferedReader br = new BufferedReader(reader); edit.read( br, null ); br.close(); edit.requestFocus(); } catch(Exception e2) { System.out.println(e2); } } }); JButton write = new JButton("Write TextAreaLoad.txt"); write.addActionListener( new ActionListener() { public void actionPerformed(ActionEvent e) { try { FileWriter writer = new FileWriter( "TextAreaLoad.txt" ); BufferedWriter bw = new BufferedWriter( writer ); edit.write( bw ); bw.close(); edit.setText(""); edit.requestFocus(); } catch(Exception e2) {} } }); JFrame frame = new JFrame("TextArea Load"); frame.getContentPane().add( new JScrollPane(edit), BorderLayout.NORTH ); frame.getContentPane().add(read, BorderLayout.WEST); frame.getContentPane().add(write, BorderLayout.EAST); frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE); frame.pack(); frame.setLocationRelativeTo( null ); frame.setVisible(true); } }