我正在尝试从另一个Java程序运行。一个制作文件的副本,另一个读取复制的文件。但在这样做时,我得到了java.lang.NullPointerException
。有人可以解释原因吗?我该如何解决这个问题?
以下是我的代码:
FirstProgram.java
package test;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
import secondprogram3.SecondProgram;
public class FirstProgram {
public static void main(String[] args) throws IOException, FileNotFoundException, InterruptedException {
BufferedReader input = null;
BufferedWriter output = null;
try {
String filePath = "1.txt";
input = new BufferedReader(new FileReader(filePath));
output = new BufferedWriter(new FileWriter("input.txt"));
String line="";
while ((line = input.readLine()) != null) {
output.write(line);
output.newLine();
}
} finally {
output.close();
input.close();
}
String args[] = {"Hello"};
SecondProgram.main(args);
}
}
SecondProgram.java
package secondprogram3;
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.FileWriter;
import java.io.IOException;
public class SecondProgram {
public static void main(String[] args) throws IOException, FileNotFoundException, InterruptedException {
BufferedReader input = null;
try {
input = new BufferedReader(new FileReader("input.txt")); // I get java.lang.NullPointerException here
String line="";
while ((line = input.readLine()) != null) {
System.out.println(line);
}
} finally {
input.close();
}
}
}