14

BufferedReader.readLine()の Javadoc には次のように書かれています。

行は、ライン フィード ('\n')、キャリッジ リターン ('\r')、またはキャリッジ リターンの直後のラインフィードのいずれかによって終了すると見なされます。

これよりも少し良い制御が必要です (たとえば、"\n" だけで行が終了しないように、行末が "\r\n" であることを指定できるようにしたい)。

これを行うJDKまたはライブラリ関数はありますか?

4

3 に答える 3

12

Scannerクラスを使用してみてください。

String line = Scanner(file).useDelimiter("\r\n").next();
于 2009-04-01T15:51:14.773 に答える
1

BufferedReader が必要なユースケースによっては、さまざまなソース (ファイル、ストリーム) からテキストを読み取ることができ、区切りパターンを指定する直接メソッドを持つ Scanner クラスの使用に切り替えることができます。http://java.sun.com/j2se/1.5.0/docs/api/java/util/Scanner.html#useDelimiter(java.lang.String)を参照してください。

于 2009-04-01T15:54:01.757 に答える
0

これを実現する標準 API を知りません。

ファイル全体を単純に文字列に読み込み、目的の終了文字で分割することができます。

for(String line: testFile.split("\r\n")){
...
}
于 2009-04-01T15:48:48.977 に答える