Java 读取每行特定字符数内的文本文件
我正在尝试从文本文件中读取文本,我已经可以使用system.out.print在系统上打印它了。但是,如果我根据在文本文件上读取的文本设置JTextArea的文本,它会在线程main java.lang.NullPointerException中显示Exception。实际上,它在打印行中运行良好,我已经可以阅读我想要的内容,但是,我不能将此文本放在JTextArea上。我该怎么办 这是我的密码:Java 读取每行特定字符数内的文本文件,java,text-files,netbeans-7,jtextfield,Java,Text Files,Netbeans 7,Jtextfield,我正在尝试从文本文件中读取文本,我已经可以使用system.out.print在系统上打印它了。但是,如果我根据在文本文件上读取的文本设置JTextArea的文本,它会在线程main java.lang.NullPointerException中显示Exception。实际上,它在打印行中运行良好,我已经可以阅读我想要的内容,但是,我不能将此文本放在JTextArea上。我该怎么办 这是我的密码: package mdiforms; import java.io.BufferedRea
package mdiforms;
import java.io.BufferedReader;
import java.io.FileReader;
public class FR
{
public static void main (String[] args) throws Exception
{
String path = ("C:/Users/Pasusani/Desktop/try.txt");
FileReader file = new FileReader(path);
BufferedReader reader = new BufferedReader(file);
String text = "";
String line = reader.readLine();
while (line !=null)
{
text += line;
line = reader.readLine();
String setText = line.substring(0,1);
txtLine.setText(setText);
}
System.out.println(text);
}
}
您的JTextArea txtLine对象未初始化,请尝试使用txtLine=new javax.swing.JTextArea 将输出流重定向到jTextArea,并如下设置输出流:
....
{
OutputStream out1 = new OutputStream() {
@Override
public void write(final int b) throws IOException {
updateTextPane(String.valueOf((char) b));
}
@Override
public void write(byte[] b, int off, int len) throws IOException {
updateTextPane(new String(b, off, len));
}
@Override
public void write(byte[] b) throws IOException {
write(b, 0, b.length);
}
};
System.setOut(new PrintStream(out1, true));
}
....
private void updateTextPane(final String text) {
SwingUtilities.invokeLater(new Runnable() {
@Override
public void run() {
Document doc = jTextArea.getDocument();
try {
doc.insertString(doc.getLength(), text, null);
} catch (BadLocationException e) {
throw new RuntimeException(e);
}
}
});
}
现在使用System.out.printlntext;它会将文本打印到jTextArea而不是控制台上。您可以将代码片段张贴在您试图将其放入jTextArea的位置吗?请张贴您的真实代码。txtLine不知从何而来。您可能没有初始化txtLine.private javax.swing.JScrollPane jScrollPane1;私有javax.swing.JScrollPane-jScrollPane2;私有静态javax.swing.JTextArea txtLine;公共静态javax.swing.JTable wa;txtLine sir是一个JTEXT区域