このプログラムは基本的に、テキスト ファイルから読み取り、現在のデータを ArrayList に格納し、(ユーザー入力からの) データを同じテキスト ファイルに書き込みます。このサブパートのどこが間違っているのか教えてください。テキストファイル内のデータは次のとおりです。
abc t1 1900
xyz t2 1700
コンパイラは次の行でエラーを表示していますoutput.format("%s%s%s%n",
public class justTesting {
private Scanner input;
private Formatter output;
private ArrayList<Student> tk = new ArrayList<Student>();
public static void main(String[] args) {
justTesting app = new justTesting();
app.create();
app.writeToFile();
}
public void create() {
Text entry = new Text();
Scanner input = new Scanner(System.in);
System.out.printf("%s\n", "Please enter your name, ID, and year: ");
while (input.hasNext()) {
try {
entry.setName(input.next());
entry.setTelNumber(input.next());
entry.setDOB(input.next());
for (int i = 0; i < tk.size(); i++) {
output.format("%s%s%s%n", tk.get(i).getName(), tk.get(i)
.getTelNumber(), tk.get(i).getDOB());
}
} catch (FormatterClosedException fce) {
System.err.println("Error writing to file.");
return;
} catch (NoSuchElementException nsee) {
System.err.println("Invalid input. Try again: ");
input.nextLine();
}
System.out.printf("%s\n", "Please enter your name, ID, and year: ");
}
}
public void writeToFile() {
try {
output = new Formatter("testing.txt");
} catch (SecurityException se) {
System.err
.println("You do not have write access permission to this file.");
System.exit(1);
} catch (FileNotFoundException fnfe) {
System.err.println("Error opening or creating file.");
System.exit(1);
}
}
}