Write to text file using ArrayList
- by Ugochukwutubelum Chiemenam
The program is basically about reading from a text file, storing the current data into an ArrayList, then writing data (from user input) into the same text file. Kindly let me know where I am going wrong in this sub-part? The data inside the text file is as follows:
abc t1 1900
xyz t2 1700
The compiler is showing an error at the line 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);
}
}
}