gpt4 book ai didi

java - 如果我要求用户输入一个文件,而该文件不存在,如何在程序不停止的情况下继续询问文件名?

转载 作者:行者123 更新时间:2023-12-01 17:38:30 25 4
gpt4 key购买 nike

这就是我所拥有的...我知道它应该需要一个循环,或者可能需要 File 类中的 .empty() 方法,但我不确定...任何帮助都会受到赞赏。我所拥有的将打开一个文件,从文件中读取每一行,然后返回文件中的字符数、文件中的单词数以及文件中的句子数。

public class FileExample{
public static void main(String[] args) throws FileNotFoundException, IOException{
Scanner in = new Scanner(System.in);
boolean fileFound = false;
try{
System.out.println("What is the name of the file?");
inputFile = in.nextLine();
File file = new File(inputFile);
fileFound = file.exists();
FileInputStream fileStream = new FileInputStream(file);
InputStreamReader input = new InputStreamReader(fileStream);
BufferedReader reader = new BufferedReader(input);
if(!file.exists()){

}
while((line = reader.readLine()) != null){
if(!(line.equals(""))){
...
}
}
}
catch(FileNotFoundException e){
System.out.println("File not found.");
}
System.out.println("output data");
}
}

最佳答案

您需要创建一个 while 循环并将 try block 移到循环内。

while(true){
try{
System.out.println("What is the name of the file?");
inputFile = in.nextLine();
File file = new File(inputFile);
if(!file.exists()){
continue;
}
FileInputStream fileStream = new FileInputStream(file);
InputStreamReader input = new InputStreamReader(fileStream);
BufferedReader reader = new BufferedReader(input);
while((line = reader.readLine()) != null){
if(!(line.equals(""))){
characterCount += line.length();
String[] wordList = line.split("\\s+");
countWord += wordList.length;
String[] sentenseList = line.split("[!?.:]+");
sentenseCount += sentenseList.length;
}
}
break;
}
catch(FileNotFoundException e){
System.out.println("File not found.");
}
}

关于java - 如果我要求用户输入一个文件,而该文件不存在,如何在程序不停止的情况下继续询问文件名?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61004563/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com