を使用する必要Scanner
があるため、nextChar()
代わりにnextLine()
使用できるメソッドはありますか?
ありがとう!
(編集で指摘したように)を使用する必要がある場合は、これを試してください:Scanner
myScanner.useDelimiter("(?<=.)");
myScanner
文字ごとに読む必要があります。
代わりにa を使用することをお勧めしBufferedReader
ます (可能であれば) -read
単一の文字を読み取るメソッドがあります。たとえば、これはファイルの最初の文字を読み取って出力します。
BufferedReader br = new BufferedReader(new FileReader("somefile.txt"));
System.out.println((char)br.read());
br.close();
を使用して行を文字に分割しString.toCharArray()
ます。
文字の配列に変換できます。
import java.io.*;
import java.util.Scanner;
public class ScanXan {
public static void main(String[] args) throws IOException {
Scanner s = null;
try {
s = new Scanner(new BufferedReader(new FileReader("yourFile.txt")));
while (s.hasNext())
{
String str = s.next();
char[] myChar = str.toCharArray();
// do something
}
} finally {
if (s != null) {
s.close();
}
}
}
使用することにコミットしている場合は、Scanner
使用できますnext(String pattern)
。
String character = scanner.next(".");
上記は、String
長さ 1 の a を返します。つまり、文字を取得しますが、文字列として取得します。