Spaces:
Running
Running
File size: 1,717 Bytes
ea79f6b | 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 | Write a program that asks the user for names.
The given names are added to a file named 'names.txt' such that each name is on its own line.
When the user enters the name "stop", the program execution ends.
import java.util.Random;
import java.util.ArrayList;
import java.util.Arrays;
import java.io.FileNotFoundException;
import java.util.Collections;
import java.util.Scanner;
public class Test{
public static void main(String[] args){
final Random r = new Random();
//ADD
Scanner reader = new Scanner(System.in);
ArrayList<String> names = new ArrayList<String>();
// get user input 'name'
while (true) {
System.out.print("Enter a name: ");
String name = String.valueOf(reader.nextLine());
// break if user inputs "stop"
if (name.equals("stop")) {
break;
}
// add name to ArrayList
names.add(name);
}
// add name to the file, separated by newline "\n"
try (PrintWriter file = new PrintWriter("names.txt")) {
names.forEach(name -> file.write(name + "\n"));
}
catch (FileNotFoundException e) {
System.out.println("An error occurred: " + e);
}
System.out.println("File content:");
}
}
Enter a name: Jack
Enter a name: Sophie
Enter a name: Oliver
Enter a name: Harry
Enter a name: Harry
Enter a name: Jack
Enter a name: Sophie
Enter a name: Lily
Enter a name: Oliver
Enter a name: Emily
Enter a name: Emily
Enter a name: Lily
Enter a name: stop
File content:
Jack
Sophie
Oliver
Harry
Harry
Jack
Sophie
Lily
Oliver
Emily
Emily
Lily
|