How to read text in Java and display it in a text editor box?
To read text into a Java text editing box, you can use the JTextArea component in the Swing framework. Here is an example code:
import java.awt.BorderLayout;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.BufferedReader;
import java.io.FileReader;
import javax.swing.JButton;
import javax.swing.JFileChooser;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTextArea;
import javax.swing.filechooser.FileNameExtensionFilter;
public class FileReadExample extends JFrame {
private JTextArea textArea;
private JButton openButton;
public FileReadExample() {
textArea = new JTextArea();
openButton = new JButton("Open File");
openButton.addActionListener(new ActionListener() {
@Override
public void actionPerformed(ActionEvent e) {
JFileChooser fileChooser = new JFileChooser();
FileNameExtensionFilter filter = new FileNameExtensionFilter("Text files", "txt");
fileChooser.setFileFilter(filter);
int returnValue = fileChooser.showOpenDialog(null);
if (returnValue == JFileChooser.APPROVE_OPTION) {
try {
FileReader fileReader = new FileReader(fileChooser.getSelectedFile());
BufferedReader reader = new BufferedReader(fileReader);
String line;
StringBuilder sb = new StringBuilder();
while ((line = reader.readLine()) != null) {
sb.append(line);
sb.append("\n");
}
reader.close();
textArea.setText(sb.toString());
} catch (Exception ex) {
JOptionPane.showMessageDialog(null, "Error reading file: " + ex.getMessage());
}
}
}
});
JPanel buttonPanel = new JPanel();
buttonPanel.add(openButton);
JScrollPane scrollPane = new JScrollPane(textArea);
getContentPane().add(buttonPanel, BorderLayout.NORTH);
getContentPane().add(scrollPane, BorderLayout.CENTER);
setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
setSize(400, 300);
setVisible(true);
}
public static void main(String[] args) {
new FileReadExample();
}
}
Running the above code will result in a window displaying. Clicking on the “Open File” button allows you to choose the text file you want to read, and then the file’s contents will be displayed in the text editing box.