我有一个使用字符串的基本用户输入和系统输出程序,并且在程序开始时它会询问用户的名字,它会在程序中保存为字符串变量。
Scanner input = new Scanner(System.in);
System.out.println("Hello there! What's your name?");
String name = input.nextLine();
我想要的是程序将其收到的所有新名称保存在外部文件中(如 文本文件),每当输入名称时,它会检查它是否曾遇到过该名称。我想使用if / else语句让它显示不同的输出,具体取决于它之前是否看过该名称。我该如何完成这项工作?
〜
如果这是一个基本问题(或者之前已经回答过),我表示道歉,但我对java相对较新,而且我无法找到解决方案。谢谢您的帮助! ^ - ^
答案 0 :(得分:0)
我认为这个程序可能已经完成了你的要求
public static void main(String as[]) throws Exception{
int i=0;
File f1=new File("D:\\Name.txt");
FileWriter fw=new FileWriter(f1,true);
Scanner input = new Scanner(System.in);
Scanner output=new Scanner(f1);
System.out.println("Hello there! What's your name?");
String name = input.nextLine();
if(!f1.exists()){
f1.createNewFile();
}
else{
while(output.hasNext()){
String na=output.next();
if(na.equals(name)){
++i;
break;
}
}
if(i==0)
fw.write(name+" ");
else{
System.out.println("Please enter some different name");
}
}
fw.close();
input.close();
output.close();
}