[英]Reading a txt file in a Java GUI
我想要做的就是顯示 txt 文件的全部內容。 我該怎么做呢? 我假設我將 JLabel 的文本設置為包含整個文件的字符串,但是如何將整個文件轉換為字符串? 另外,txt 文件是否位於 Eclipse 的 src 文件夾中?
此代碼用於在 Jtext 區域中顯示所選文件的內容
static void readin(String fn, JTextComponent pane)
{
try
{
FileReader fr = new FileReader(fn);
pane.read(fr, null);
fr.close();
}
catch (IOException e)
{
System.err.println(e);
}
}
選擇文件
String cwd = System.getProperty("user.dir");
final JFileChooser jfc = new JFileChooser(cwd);
JButton filebutton = new JButton("Choose");
filebutton.addActionListener(new ActionListener()
{
public void actionPerformed(ActionEvent e)
{
if (jfc.showOpenDialog(frame) !=JFileChooser.APPROVE_OPTION)
return;
File f = jfc.getSelectedFile();
readin(f.toString(), textpane);
SwingUtilities.invokeLater(new Runnable() {
public void run() {
frame.setCursor(Cursor.
getPredefinedCursor(
Cursor.DEFAULT_CURSOR));
}
});
}
});
我想要做的就是顯示 txt 文件的全部內容。 我該怎么做呢? 我假設我將 JLabel 的文本設置為包含整個文件的字符串,但如何將整個文件轉換為字符串?
您最好使用JTextArea來執行此操作。 您還可以查看read()方法。
txt 文件是否放在 Eclipse 的 src 文件夾中?
不。 您可以從任何地方讀取文件。 “讀、寫和創建文件”教程將是一個很好的起點
stringBuilder
變量中stringBuilder
變量StringBuilder
變量的內容分配給JLabel
的 text 屬性但是將整個文件的數據存儲到JLabel
,使用JTextArea
或任何其他文本容器並不是一個好主意。
像這樣閱讀你的文件:
BufferedReader br = new BufferedReader(new FileReader("file.txt"));
try {
StringBuilder sb = new StringBuilder();
String line = br.readLine();
while (line != null) {
sb.append(line);
line = br.readLine();
}
String everything = sb.toString();
} finally {
br.close();
}
現在將所有內容的值分配給JLabel
或JTextArea
JLabel1.text=everything;
java.io
打開文件流。StringBuilder
或StringBuffer
StringBuilder
或StringBuffer
設置為JLable.text
。 但我建議使用JTextArea
..
您不需要將此文件放在 src 文件夾中。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.