如何使用scanner.next()读取空白

我有一台扫描仪,并将定界符设置为“”,但是它仍然不会使用next()方法读取空格。我知道nextline()可以工作,但是我需要单独检查输入中的每个字符,包括空格;这是一个复杂的数据分析问题。不过我很困惑。谷歌什么也没发现。

谁能帮我这个?我正在考虑将空格反转为一个特殊字符,然后出于分析该字符的目的,将其反转回一个包含在字符串中的空格……这似乎有些过头了!有没有更优雅的方式做到这一点?

编辑:我的主要任务是,获取一个字符串,并逐个字符遍历它,以检查各种任务的数据。您将不得不多次对其进行一次检查,因此,我认为最好使用扫描仪类,因为它可以很容易地使用(至少对我而言)。那是我的任务

有没有更简单的方法可以做到这一点?

回答:

Scanner scanner = new Scanner(file).useDelimiter("'")

但这是非常低效的。更好的前进方式是:逐个字符地阅读:

private static void readCharacters(Reader reader)

throws IOException {

int r;

while ((r = reader.read()) != -1) {

char ch = (char) r;

doSomethingWithChar(ch);

}

}

另请参阅这里

以上是 如何使用scanner.next()读取空白 的全部内容, 来源链接: utcz.com/qa/406529.html

回到顶部