Loading a text file into a textarea

后端 未结 4 424
猫巷女王i
猫巷女王i 2020-11-27 08:55

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 f

4条回答
  •  离开以前
    2020-11-27 09:15

    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(30, 60);
            edit.setText("one\ntwo\nthree");
            edit.append("\nfour\nfive");
    
            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);
        }
    }
    

提交回复
热议问题