Package blbutil
Class InputIt
- java.lang.Object
-
- blbutil.InputIt
-
- All Implemented Interfaces:
FileIt<java.lang.String>
,java.io.Closeable
,java.lang.AutoCloseable
,java.util.Iterator<java.lang.String>
public class InputIt extends java.lang.Object implements FileIt<java.lang.String>
Class
InputIt
is a buffered iterator whosenext()
method returns lines of a text input stream.If an
Instances of classIOException
is thrown when anInputIt
instance reads from the text input stream, theIOException
is trapped, an error message is written to standard out, and the Java Virtual Machine is terminated.InputIt
are not thread-safe.- See Also:
DEFAULT_BUFFER_SIZE
-
-
Field Summary
Fields Modifier and Type Field Description static int
DEFAULT_BUFFER_SIZE
The default buffer size, which is 4,194,304 bytes.
-
Method Summary
All Methods Static Methods Instance Methods Concrete Methods Modifier and Type Method Description void
close()
Terminates the iteration and releases any system resources that are held by this object.java.io.File
file()
Returns the file from which the data are read, ornull
if the data are read from standard input or are computed data.static InputIt
fromGzipFile(java.io.File file)
Constructs and returns anInputIt
instance with the default buffer size that iterates through lines of the specified compressed or uncompressed text file.static InputIt
fromGzipFile(java.io.File file, int bufferSize)
Constructs and returns anInputIt
instance with the specified buffer size that iterates through lines of the specified compressed or uncompressed text file.static InputIt
fromStdIn()
Constructs and returns anInputIt
instance with the default buffer size that iterates through lines of text read from standard input.static InputIt
fromStdIn(int bufferSize)
Constructs and returns anInputIt
instance with the specified buffer size that iterates through lines of text read from standard input.static InputIt
fromTextFile(java.io.File file)
Constructs and returns anInputIt
instance with the default buffer size that iterates through lines of the specified text file.static InputIt
fromTextFile(java.io.File file, int bufferSize)
Constructs and returns anInputIt
instance with the specified buffer size that iterates through lines of the specified text file.boolean
hasNext()
Returnstrue
if the iteration has more elements.java.lang.String
next()
Returns the next element in the iteration.void
remove()
Theremove
method is not supported by this iterator.java.lang.String
toString()
Returns a string representation of this iterator.
-
-
-
Field Detail
-
DEFAULT_BUFFER_SIZE
public static final int DEFAULT_BUFFER_SIZE
The default buffer size, which is 4,194,304 bytes.- See Also:
- Constant Field Values
-
-
Method Detail
-
file
public java.io.File file()
Description copied from interface:FileIt
Returns the file from which the data are read, ornull
if the data are read from standard input or are computed data.
-
hasNext
public boolean hasNext()
Returnstrue
if the iteration has more elements.- Specified by:
hasNext
in interfacejava.util.Iterator<java.lang.String>
- Returns:
true
if the iteration has more elements
-
next
public java.lang.String next()
Returns the next element in the iteration.- Specified by:
next
in interfacejava.util.Iterator<java.lang.String>
- Returns:
- the next element in the iteration
- Throws:
java.util.NoSuchElementException
- if the iteration has no more elements
-
remove
public void remove()
Theremove
method is not supported by this iterator.- Specified by:
remove
in interfacejava.util.Iterator<java.lang.String>
- Throws:
java.lang.UnsupportedOperationException
- if this method is invoked
-
close
public void close()
Description copied from interface:FileIt
Terminates the iteration and releases any system resources that are held by this object. After invokingclose()
, further invocations ofclose()
have no effect.
-
toString
public java.lang.String toString()
Returns a string representation of this iterator. The exact details of the representation are unspecified and subject to change.
-
fromStdIn
public static InputIt fromStdIn()
Constructs and returns anInputIt
instance with the default buffer size that iterates through lines of text read from standard input.- Returns:
- a new
InputIt
instance that iterates through lines of text read from standard input
-
fromStdIn
public static InputIt fromStdIn(int bufferSize)
Constructs and returns anInputIt
instance with the specified buffer size that iterates through lines of text read from standard input.- Parameters:
bufferSize
- the buffer size in bytes- Returns:
- a new
InputIt
instance that iterates through lines of text read from standard input - Throws:
java.lang.IllegalArgumentException
- ifbufferSize < 0
-
fromGzipFile
public static InputIt fromGzipFile(java.io.File file)
Constructs and returns anInputIt
instance with the default buffer size that iterates through lines of the specified compressed or uncompressed text file. If the filename ends in ".gz", the file must be either BGZIP-compressed or GZIP-compressed.- Parameters:
file
- a compressed or uncompressed text file- Returns:
- a new
InputIt
instance that iterates through lines of the specified text file - Throws:
java.lang.NullPointerException
- iffile == null
-
fromGzipFile
public static InputIt fromGzipFile(java.io.File file, int bufferSize)
Constructs and returns anInputIt
instance with the specified buffer size that iterates through lines of the specified compressed or uncompressed text file. If the filename ends in ".gz", the file must be either BGZIP-compressed or GZIP-compressed.- Parameters:
file
- a compressed or uncompressed text filebufferSize
- the buffer size in bytes- Returns:
- a new
InputIt
instance that iterates through lines of the specified text file - Throws:
java.lang.IllegalArgumentException
- ifbufferSize < 0
java.lang.NullPointerException
- iffile == null
-
fromTextFile
public static InputIt fromTextFile(java.io.File file)
Constructs and returns anInputIt
instance with the default buffer size that iterates through lines of the specified text file.- Parameters:
file
- a text file- Returns:
- a new
InputIt
instance that iterates through lines of the specified text file - Throws:
java.lang.NullPointerException
- iffilename == null
-
fromTextFile
public static InputIt fromTextFile(java.io.File file, int bufferSize)
Constructs and returns anInputIt
instance with the specified buffer size that iterates through lines of the specified text file.- Parameters:
file
- a text filebufferSize
- the buffer size in bytes- Returns:
- a new
InputIt
instance that iterates through lines of the specified text file - Throws:
java.lang.IllegalArgumentException
- ifbufferSize < 0
java.lang.NullPointerException
- iffilename == null
-
-