public abstract class IndexInput
extends java.lang.Object
implements java.lang.Cloneable
Directory. A
random-access input stream. Used for all Lucene index input operations.Directory| Constructor and Description |
|---|
IndexInput() |
| Modifier and Type | Method and Description |
|---|---|
java.lang.Object |
clone()
Returns a clone of this stream.
|
abstract void |
close()
Closes the stream to further operations.
|
abstract long |
getFilePointer()
Returns the current position in this file, where the next read will
occur.
|
abstract long |
length()
The number of bytes in the file.
|
abstract byte |
readByte()
Reads and returns a single byte.
|
abstract void |
readBytes(byte[] b,
int offset,
int len)
Reads a specified number of bytes into an array at the specified offset.
|
void |
readBytes(byte[] b,
int offset,
int len,
boolean useBuffer)
Reads a specified number of bytes into an array at the
specified offset with control over whether the read
should be buffered (callers who have their own buffer
should pass in "false" for useBuffer).
|
void |
readChars(char[] buffer,
int start,
int length)
Deprecated.
-- please use readString or readBytes
instead, and construct the string
from those utf8 bytes
|
int |
readInt()
Reads four bytes and returns an int.
|
long |
readLong()
Reads eight bytes and returns a long.
|
java.lang.String |
readString()
Reads a string.
|
java.util.Map |
readStringStringMap() |
int |
readVInt()
Reads an int stored in variable-length format.
|
long |
readVLong()
Reads a long stored in variable-length format.
|
abstract void |
seek(long pos)
Sets current position in this file, where the next read will occur.
|
void |
setModifiedUTF8StringsMode()
Call this if readString should read characters stored
in the old modified UTF8 format (length in java chars
and java's modified UTF8 encoding).
|
void |
skipChars(int length)
Deprecated.
this method operates on old "modified utf8" encoded
strings
|
public abstract byte readByte()
throws java.io.IOException
java.io.IOExceptionIndexOutput.writeByte(byte)public abstract void readBytes(byte[] b,
int offset,
int len)
throws java.io.IOException
b - the array to read bytes intooffset - the offset in the array to start storing byteslen - the number of bytes to readjava.io.IOExceptionIndexOutput.writeBytes(byte[],int)public void readBytes(byte[] b,
int offset,
int len,
boolean useBuffer)
throws java.io.IOException
BufferedIndexInput respects this parameter.b - the array to read bytes intooffset - the offset in the array to start storing byteslen - the number of bytes to readuseBuffer - set to false if the caller will handle
buffering.java.io.IOExceptionIndexOutput.writeBytes(byte[],int)public int readInt()
throws java.io.IOException
java.io.IOExceptionIndexOutput.writeInt(int)public int readVInt()
throws java.io.IOException
java.io.IOExceptionIndexOutput.writeVInt(int)public long readLong()
throws java.io.IOException
java.io.IOExceptionIndexOutput.writeLong(long)public long readVLong()
throws java.io.IOException
java.io.IOExceptionpublic void setModifiedUTF8StringsMode()
public java.lang.String readString()
throws java.io.IOException
java.io.IOExceptionIndexOutput.writeString(String)public void readChars(char[] buffer,
int start,
int length)
throws java.io.IOException
buffer - the array to read characters intostart - the offset in the array to start storing characterslength - the number of characters to readjava.io.IOExceptionIndexOutput.writeChars(String,int,int)public void skipChars(int length)
throws java.io.IOException
readChars(char[], int, int) but does not do any conversion operations on the bytes it is reading in. It still
has to invoke readByte() just as readChars(char[], int, int) does, but it does not need a buffer to store anything
and it does not have to do any of the bitwise operations, since we don't actually care what is in the byte except to determine
how many more bytes to readlength - The number of chars to readjava.io.IOExceptionpublic abstract void close()
throws java.io.IOException
java.io.IOExceptionpublic abstract long getFilePointer()
seek(long)public abstract void seek(long pos)
throws java.io.IOException
java.io.IOExceptiongetFilePointer()public abstract long length()
public java.lang.Object clone()
Clones of a stream access the same data, and are positioned at the same point as the stream they were cloned from.
Expert: Subclasses must ensure that clones may be positioned at different points in the input from each other and from the stream they were cloned from.
clone in class java.lang.Objectpublic java.util.Map readStringStringMap()
throws java.io.IOException
java.io.IOExceptionCopyright © 2000-2016 Apache Software Foundation. All Rights Reserved.