.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ファイル内のテキスト行全体を読み取る方法を知っていますが、その特定の部分だけを読み取る方法は知りません。
次のトークンを int として読み取るメソッドをScanner
提供するクラスを使用できます。Scanner#nextInt()
ここで、整数はコンマ ( ,
)で区切られているため、文字をデフォルトの区切り文字として使用するの区切り文字としてコンマ ( ,
)を設定する必要があります。そのためにはメソッドを使用する必要があります。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()を参照してください。