Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/333.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
自动在外部存储字符串数据,以便以后在Java中使用_Java_String_Input - Fatal编程技术网

自动在外部存储字符串数据,以便以后在Java中使用

自动在外部存储字符串数据,以便以后在Java中使用,java,string,input,Java,String,Input,我有一个使用字符串的基本用户输入和系统输出程序,在程序开始时,它要求输入用户名,并将其保存为程序中的字符串变量 Scanner input = new Scanner(System.in); System.out.println("Hello there! What's your name?"); String name = input.nextLine(); 我想要的是程序将它接收到的所有新名称保存在一个外部文件(如 文本文件),并且无论何时输入名称,它都会检查以前是否遇到过该名称。我想使

我有一个使用字符串的基本用户输入和系统输出程序,在程序开始时,它要求输入用户名,并将其保存为程序中的字符串变量

Scanner input = new Scanner(System.in); 
System.out.println("Hello there! What's your name?");
String name = input.nextLine();
我想要的是程序将它接收到的所有新名称保存在一个外部文件(如 文本文件),并且无论何时输入名称,它都会检查以前是否遇到过该名称。我想使用if/else语句让它显示不同的输出,这取决于它以前是否看到过该名称。我怎样才能做到这一点呢

~


如果这是一个基本问题(或者如果以前已经回答过),我很抱歉,但我对java相对较新,无法找到解决方案。谢谢你的帮助^-^

我认为这个项目可以满足您的要求

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();

}

你知道如何(1)在Java中写入文件和(2)在Java中读取文件吗?我一直在使用Eclipse创建Java项目和类,写入类,然后在Eclipse中编译和执行程序。这回答了你的问题吗?间接地说,是的。你需要把这个问题分解成几个步骤。就计算机而言,您真正想要做的是:打开一个具有特定名称的文件,将其命名为C:\myFile.txt;如果文件不存在,请创建它。在文件末尾写入一些用户输入,然后保存并关闭。这是写作部分,这是你问题的一半,对于初学者来说是一个开始。查看
java.io.*
中的
文件
类;基本上非常感谢你!这非常有帮助我能够让Java编写一个文本文件,使用输入名作为文件名和内容。您可能知道一个简单的语句,我可以使用它让java检查文件是否存在,并根据是否存在返回布尔值?首先创建一个文件对象
file file file=new file(“C:\\myDirectory\\myFile.txt”)
然后创建物理文件
file.createNewFile()
createNewFile()
不接受参数。或者您可以执行
System.out.println(“创建的文件?”+File.createNewFile())
检查文件是否已创建。