Java 从文本文件读取JTextPane
我有一个.txt文件,它有3行 我的GUI代码是Java 从文本文件读取JTextPane,java,swing,oop,file-io,jtextpane,Java,Swing,Oop,File Io,Jtextpane,我有一个.txt文件,它有3行 我的GUI代码是 txtpnEmergencyAmbulanceAnd = new JTextPane(); try { // FileReader reads text files in the default encoding. FileReader fileReader = new FileReader(fileNumbers); // Always wrap FileRea
txtpnEmergencyAmbulanceAnd = new JTextPane();
try {
// FileReader reads text files in the default encoding.
FileReader fileReader = new FileReader(fileNumbers);
// Always wrap FileReader in BufferedReader.
BufferedReader bufferedReader = new BufferedReader(fileReader);
while((lineNumbers = bufferedReader.readLine()) != null) {
txtpnEmergencyAmbulanceAnd.setText(lineNumbers);
}
// Always close files.
bufferedReader.close();
}
catch(FileNotFoundException ex) {
System.out.println(
"Unable to open file '" +
fileNumbers + "'");
}
catch(IOException ex) {
System.out.println(
"Error reading file '"
+ fileNumbers + "'");
}
然而,打印到我的GUI中的只是最后一行。我想把这三行都打印出来
我还将此作为一项全球计划
String fileNumbers = "numbers.txt";
String lineNumbers = "";
setText
准确地将组件文本设置为您传递给它的值,丢弃它以前拥有的任何内容
相反,尝试使用
仅供参考:为了更好地管理您的资源,您可能需要更仔细地了解一下
setText
确实将组件文本设置为您传递给它的值,丢弃它以前拥有的任何内容
相反,尝试使用
仅供参考:为了更好地管理您的资源,您可能需要仔细查看一下,因为每次跑步时都会覆盖
JTextPane
快速而肮脏的解决方案:
txtpnEmergencyAmbulanceAnd.setText(txtpnEmergencyAmbulanceAnd.getText() + lineNumbers);
是的,因为每次运行时都会覆盖
JTextPane
的内容
快速而肮脏的解决方案:
txtpnEmergencyAmbulanceAnd.setText(txtpnEmergencyAmbulanceAnd.getText() + lineNumbers);
String
串联在循环中不是一个好主意,当然是三行,但是使用StringBuilder
不仅是一个好的实践,而且在这种情况下,它也会更有效,因为您不必将文档
转换为字符串
,您必须设法忽略我的“解决方案”的前缀是“快而脏”。作为一个专业论坛,我们真的应该避免“快而脏”“因为它会导致坏习惯,然后需要把这些坏习惯从人们身上打掉……除了擦伤;)这是可行的,但它并没有将这三条线分开。它将三行合为一行。是的,因为您必须自己处理换行。String
串联在循环中不是一个好主意,当然是三行,但是使用StringBuilder
不仅是一个很好的实践,而且在这种情况下,它也会更有效,由于您不必将文档
转换为字符串
,因此您必须设法忽略我的“解决方案”中的“快速和肮脏”前缀。作为专业人士的论坛,我们确实应该避免“快速和肮脏”,因为它会导致坏习惯,然后需要将这些坏习惯从人们身上赶走……省去伤痕;)这是可行的,但它并没有将这三条线分开。是的,因为您必须自己处理换行操作。txtpneurgencyAmbunceand.read(bufferedReader,filenumber)
但是,这只打印我的最后两行。显然,在.txt文件中我的第一行的顶部添加了一个空行修复了这个问题。txtpneurgencyAmbulanceand.read(bufferedReader,filenumber)代码>但是,这只打印我的最后两行。显然,在.txt文件中我的第一行的顶部添加一个空行修复了这个问题。