我想知道,有没有办法只读取 .txt 文件中字符串的一部分?例如,如果“1,5,10,20”在我的 .txt 文件中,我可以告诉 Java 将“1”保存到某个 int,然后将“5”保存到不同的 int,等等?我希望我说得足够清楚!
多谢你们!
PS 我知道如何使用 BufferedReader 在 Java 中读取 .txt 文件中的整行文本,只是不知道如何仅读取其中的某些部分。
我想知道,有没有办法只读取 .txt 文件中字符串的一部分?例如,如果“1,5,10,20”在我的 .txt 文件中,我可以告诉 Java 将“1”保存到某个 int,然后将“5”保存到不同的 int,等等?我希望我说得足够清楚!
多谢你们!
PS 我知道如何使用 BufferedReader 在 Java 中读取 .txt 文件中的整行文本,只是不知道如何仅读取其中的某些部分。
您可以使用Scanner
class,它提供了Scanner#nextInt()
一种将下一个标记读取为 int 的方法。现在,由于你的整数是用逗号(,
)分隔的,你需要在你的中设置逗号(,
)作为分隔符Scanner
,它使用whitespace
字符作为默认分隔符。您需要为此使用Scanner#useDelimiter(String)
方法。
您可以使用以下代码:
Scanner scanner = new Scanner(new File("demo.txt"));
scanner.useDelimiter(",");
while (scanner.hasNextInt()) {
System.out.println(scanner.nextInt());
}
该类Scanner
具有一组hasNextXyz()
和nextXyz()
方法,可用于选择和转换由某些分隔符分隔的值。
String lineOfInts = "1,5,10,15,20";
Scanner scanner = new Scanner(lineOfInts).useDelimiter(",");
while (scanner.hasNextInt()) {
System.out.println(scanner.nextInt());
}
有关详细信息,请参阅Scanner#nextInt()。