У меня есть 2 файла Details.java и TestDetails.java и файл данных с именем Details.dat
Details.java
import java.util.Scanner;
import java.io.*;
public class Details {
private String path;
File myFile = new File(path);
public void setMyFile(String path) {
this.path = path;
}
public void load() throws IOException, FileNotFoundException {
Scanner input = new Scanner(myFile);
int numberOfMembers = input.nextInt();
String[] members = new String[numberOfMembers];
for (String s : members) {
String name = input.next();
String age = input.next();
String qualification = input.next();
System.out.println("The name of the family member is " + name + " the age of the family member is" + age
+ " the qualification of the " + "family member is" + qualification);
}
}
}
TestDetails.java
import java.io.IOException;
public class TestDetails {
public static void main(String[] args) {
Details myDetails = new Details();
myDetails.setMyFile(args[0]);
try {
myDetails.load();
} catch (IOException i) {
System.out.println(i.getMessage());
}
}
}
Details.dat
4
a 26 bsc
b 22 bcom
c 50 ba
d 60 bsc
Всякий раз, когда я пытаюсь запустить файл TestDetails.java, я получаю исключение NullPointerException и трассировку стека.направляет трассировку стека к объекту File.
Так в чем здесь проблема?Почему я получаю исключение NullPointerException?
ps в аргументе метода setFile (), я передаю в Details.dat позицию args [0] в командной строке