public final class Input extends Object
InputStream
やFile
を使って初期化を行った場合は
EOFに到達した時点でInputStream.close()
を呼び出してストリームをクローズする。
実装の性質上、パース処理中にIOException
が発生する可能性がある。
この例外が発生した場合、ストリームのクローズを試みた上で、
例外をParseException
でラップしてスローする。
修飾子とタイプ | メソッドと説明 |
---|---|
int |
columnNumber()
現在読み取り位置のカラム数を返す.
|
char |
current()
現在読み取り位置の文字を返す.
|
static Input |
fromCharSequence(CharSequence s)
文字列を使って初期化を行う.
|
static Input |
fromFile(File f)
ファイルを使って初期化を行う.
|
static Input |
fromFile(File f,
Charset charset)
ファイルを使って初期化を行う.
|
static Input |
fromReader(Reader r) |
static Input |
fromStream(InputStream s)
入力ストリームを使って初期化を行う.
|
static Input |
fromStream(InputStream s,
Charset charset)
入力ストリームを使って初期化を行う.
|
String |
line()
現在の行を返す.
|
String |
line(boolean chomp)
現在の行を返す.
|
int |
lineNumber()
現在読み取り位置の行数を返す.
|
char |
next()
読み取り位置を1つ前進させその位置にある文字を返す.
|
boolean |
reachedEOF()
EOFに到達済みかどうかを判定して返す.
|
boolean |
reachedEOL()
行末に到達済みかどうかを判定して返す.
|
String |
restOfLine()
現在読み取り位置以降の行末までの文字列を返す.
|
String |
restOfLine(boolean chomp)
現在読み取り位置以降の行末までの文字列を返す.
|
boolean |
restStartsWith(String prefix)
現在読み取り位置に引数で指定された文字列があるかどうか判定する(前方一致判定する).
|
boolean |
unlessEOF()
reachedEOF() の反対. |
boolean |
unlessEOL()
reachedEOL() の反対. |
public static Input fromCharSequence(CharSequence s) throws InputExeption
s
- 文字列InputExeption
- 初期化中にエラーが発生した場合public static Input fromStream(InputStream s) throws InputExeption
s
- 入力ストリームInputExeption
- 初期化中にエラーが発生した場合public static Input fromStream(InputStream s, Charset charset) throws InputExeption
s
- 入力ストリームcharset
- キャラクターセットInputExeption
- 初期化中にエラーが発生した場合public static Input fromReader(Reader r) throws InputExeption
InputExeption
public static Input fromFile(File f) throws InputExeption
f
- ファイルInputExeption
- 初期化中にエラーが発生した場合public static Input fromFile(File f, Charset charset) throws InputExeption
f
- ファイルcharset
- キャラクターセットInputExeption
- 初期化中にエラーが発生した場合public char current()
public int columnNumber()
1
を加算したもの。
すなわち現在読み取り位置が行頭の文字の上にある場合このメソッドは1
を返す。public String line()
null
を返す。
このメソッドが返す文字列には行末の改行文字が含まれる。
あらかじめ改行文字が除去された文字列が必要な場合はline(boolean)
を使用する。public String line(boolean chomp)
null
を返す。
引数としてtrue
を渡すとあらかじめ行末の改行文字が除去された文字列を返す。chomp
- 行末の改行文字を除去するかどうかpublic int lineNumber()
public String restOfLine()
public String restOfLine(boolean chomp)
true
を渡すとあらかじめ行末の改行文字が除去された文字列を返す。chomp
- 行末の改行文字を除去するかどうかpublic boolean restStartsWith(String prefix)
Input#restOfLine().startsWith(String)
と同じ結果となる。prefix
- 前方一致判定に使用される文字列public boolean reachedEOF()
public boolean unlessEOF()
reachedEOF()
の反対.public boolean reachedEOL()
public boolean unlessEOL()
reachedEOL()
の反対.public char next() throws InputExeption
' '
を返す。InputExeption
- 入力データ読み取り中にエラーが発生した場合Copyright © 2016. All rights reserved.