gpt4 book ai didi

java - 从文本文件中获取所有单词(Java)

转载 作者:行者123 更新时间:2023-11-30 10:04:47 24 4
gpt4 key购买 nike

我正在尝试显示文件中可以水平和垂直找到的所有单词,并且我正在尝试打印每个单词(行和列)的第一个字符的位置。

我让它水平显示每个单词而不是垂直显示。

这是我目前使用的代码

public class WordFinder {
public static final String WORD_FILE = "words.txt";
public static void find(){
try {
File file = new File(WORD_FILE);
Scanner scanner = new Scanner(file);
while (scanner.hasNext() == true) {
String s = scanner.next();
System.out.println(s);
}
scanner.close();
} catch (FileNotFoundException e) {
System.out.println("File not found.");
}
}

它应该水平和垂直搜索文件以查找单词。一旦它找到一个单词,它应该显示单词第一个字母的位置(例如 grammar: row 8, position 1)目前它只打印所有水平单词。

最佳答案

你必须在迭代时计算单词的行号和位置。因此你应该使用 scanner.hasNextLine()scanner.nextLine() .之后你可以分割线:

int lineNumber = 0;
while (scanner.hasNextLine()) {
String line = scanner.nextLine();
int positionNumber = 0;
for (String word : line.split("\\s")) {
if (!word.isEmpty())
System.out.println(word + ": line " + (lineNumber + 1) + ", position " + (positionNumber + 1));
positionNumber += word.length() + 1;
}
lineNumber++;
}

这会在所有空格 ( \\s ) 上拆分行并使用 if (!word.isEmpty()) 处理双空格(空词) .

关于java - 从文本文件中获取所有单词(Java),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55694095/

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