gpt4 book ai didi

java从文件读取行时遇到问题

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

我的代码没有从文件中读取该行。但我不知道为什么。初级Java,任何输入都有帮助。

谢谢。

public class ReverseWords {

public static void main(String [] args){
Scanner in = new Scanner(System.in);
System.out.print("Enter File Name: ");
String fileName = in.nextLine();
File f = new File(fileName);
try {
Scanner input = new Scanner(f);
int n = input.nextInt();
String line = input.nextLine();
System.out.println(line);
String [] words = line.split(" ");

for(int i=0; i<words.length; i++){
System.out.println(words[i]);

}


} catch (FileNotFoundException e) {
e.printStackTrace();
}

}

最佳答案

由于没有文件内容,我只能猜测。

nextInt() 不会更改 Scanner 中的行计数器,因此 nextLine() 调用将返回您所输入的行的其余部分目前位于.这可能不是您想要的,这就是没有读取任何行的原因。

为了避免您可以通过在 nextInt() 之后执行额外的 nextLine() 调用来显式更改行计数器:

int n = input.nextInt(); 
input.nextLine();
String line = input.nextLine();

来自Scanner.nextLine API 文档:

This method returns the rest of the current line, excluding any line separator at the end.

关于java从文件读取行时遇到问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16862531/

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