我正在尝试从文本文件中读取文本,我已经可以使用system.out.print在系统上打印它。但是,如果我从文本文件中读取的文本中设置JTextArea
的文本,则会显示“线程中的异常”主“java.lang.NullPointerException”。它实际上在印刷线上运行良好,我已经可以阅读我想要的内容但是,我不能将此文本放在JTextArea
上。我该怎么办?
这是我的代码:
package mdiforms;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.InputStreamReader;
public class trylang extends javax.swing.JInternalFrame {
/** Creates new form trylang */
public trylang() {
initComponents();
}
@SuppressWarnings("unchecked")
public static void main(String[] args) throws Exception {
BufferedReader br = null;
String path = "C:/Users/Pasusani/Desktop/tawa.txt";
try {
// change this value
FileInputStream fis = new FileInputStream(path);
br = new BufferedReader(new InputStreamReader(fis, "UTF-8"));
String CurrentLine;
while ((CurrentLine = br.readLine()) != null) {
processLine(CurrentLine);
}
} finally {
if (br != null) br.close();
}
}
public static void processLine(String line) {
// skip header & footer
//if (line.startsWith("127.0.1.1/dev/sda1")) return;
String name = line.substring(0, 1);
String year = line.substring(0, 5);
System.out.print("Name [" + name + "]\t Year [" + year +"]");
String ewan = "Name [" + name + "]\t Year [" + year +"]";
txt_try.setText(ewan);
}
}
答案 0 :(得分:2)
processLine
是一种static
方法,我想在调用trylang
之前需要创建txt_try.setText(ewan);
的实例
我假设您正在txt_try
初始化initComponents();
trylang
,该txt_try ==> txtTry
trylang ==> TryLang
在{{1}}的默认构造函数中调用。
<强>旁注:强>
请遵循Java命名约定
{{1}}