Я довольно новичок в Java, поэтому мне было интересно, может ли кто-нибудь помочь мне разобраться в этом.
Мне удалось создать программу, которая позволяет пользователю вводить имя файла, которое затем показываетсодержимое файла в системном выводе, но я хочу иметь возможность отображать вывод в JTextArea вместо текущего места вывода.Может ли кто-нибудь помочь мне понять, как это возможно?
Поскольку в одном из комментариев было предложено добавить JFrame, прежде чем делать что-либо еще, и мне удалось создать JFrame с JTextArea, но япо-прежнему не удается отобразить текстовый файл в TextArea.
import java.awt.GraphicsConfiguration;
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.nio.file.Path;
import java.nio.file.Paths;
import javax.swing.JFrame;
import javax.swing.JOptionPane;
import javax.swing.JTextArea;
public class OpenFile {
static GraphicsConfiguration gc;
public static void main(String[] args) {
String selectModule = "";
selectModule = JOptionPane.showInputDialog("Module Input: ");
Path path = Paths.get(selectModule);
String fileOpener = selectModule;
if(selectModule.equalsIgnoreCase(fileOpener)){
//Makes the user input case insensitive
}
BufferedReader br = null;
FileReader fr = null;
try {
//br = new BufferedReader(new FileReader(FILENAME));
fr = new FileReader(fileOpener + ".txt");
br = new BufferedReader(fr);
String sCurrentLine;
while ((sCurrentLine = br.readLine()) != null) {
System.out.println(sCurrentLine);
}
} catch (IOException e) {
e.printStackTrace();
} finally {
try {
if (br != null)
br.close();
if (fr != null)
fr.close();
} catch (IOException ex) {
ex.printStackTrace();
}
}
JTextArea TextArea22 = new JTextArea(selectModule);
JFrame frame= new JFrame(gc);
frame.setTitle("Opening TextFile");
frame.setSize(600, 400);
frame.setLocation(200, 200);
frame.setVisible(true);
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setResizable(false);
frame.add(TextArea22);
}
}