限定符和类型 | 方法和说明 |
---|---|
void |
close()
关闭解码器
|
abstract int |
columnIndexOf(edu.sysu.pmglab.container.ByteCode columnName)
查看指定列成员元素在列中的索引
|
int |
columnIndexOf(java.lang.String columnName)
查看指定列成员元素在列中的索引
|
abstract edu.sysu.pmglab.container.ByteCode |
columnNameOf(int columnNameIndex)
获取指定索引的列名
|
boolean |
containField(java.lang.String fieldName)
是否包含指定字段
|
boolean |
endOfFile()
是否到达文件末尾
|
abstract int |
getColumnNum()
获取列元个数
|
int |
getFieldIndex(java.lang.String fieldName)
根据字段名获取值字段的索引
|
java.lang.String |
getFieldName(int fieldIndex)
根据索引获取值的字段名
|
int |
getFieldNum() |
FieldType |
getFieldType(java.lang.String fieldName)
获取值类型
|
java.util.Map<java.lang.String,FieldType> |
getFieldTypes()
获取值类型 (字段名-类型)
|
edu.sysu.pmglab.unifyIO.Path |
getFilePath()
获取输入文件名
|
MatrixType |
getMatrixType()
获取矩阵类型
|
MATMeta |
getMeta()
获取注释信息
|
IRecord |
getRecord()
获取记录模版对象
|
long |
getRecordNum()
获取总记录条目数
|
abstract int |
getRowNum()
获取行元个数
|
boolean |
isClosed()
文件是否已关闭
|
java.util.Iterator<IRecord> |
iterator() |
java.lang.Iterable<IRecord> |
iterator(java.util.function.Function<IRecord,java.lang.Boolean> filter)
迭代读取满足条件的所有记录
|
java.lang.Iterable<IRecord> |
iterator(java.util.Map<java.lang.Integer,edu.sysu.pmglab.container.array.IntArray> pairIndexes,
java.util.function.Function<IRecord,java.lang.Boolean> filter)
迭代读取满足条件的所有记录
|
static MATDecoder |
of(CCFTable inputFile)
实例化解码器
|
static MATDecoder |
of(CCFTable table,
java.lang.Iterable<java.lang.String> fieldNames)
实例化解码器
|
static MATDecoder |
of(CCFTable inputFile,
java.lang.String... fieldNames)
实例化解码器
|
static MATDecoder |
of(java.io.File inputFile)
实例化解码器
|
static MATDecoder |
of(java.io.File inputFile,
java.lang.Iterable<java.lang.String> fieldNames)
实例化解码器
|
static MATDecoder |
of(java.io.File inputFile,
java.lang.String... fieldNames)
实例化解码器
|
static MATDecoder |
of(edu.sysu.pmglab.unifyIO.Path inputFile)
实例化解码器
|
static MATDecoder |
of(edu.sysu.pmglab.unifyIO.Path inputFile,
java.lang.Iterable<java.lang.String> fieldNames)
实例化解码器
|
static MATDecoder |
of(edu.sysu.pmglab.unifyIO.Path inputFile,
java.lang.String... fieldNames)
实例化解码器
|
static MATDecoder |
of(java.lang.String inputFileName)
实例化解码器
|
static MATDecoder |
of(java.lang.String inputFileName,
java.lang.Iterable<java.lang.String> fieldNames)
实例化解码器
|
static MATDecoder |
of(java.lang.String inputFileName,
java.lang.String... fieldNames)
实例化解码器
|
IRecord |
read()
读取一条记录
文件指针到达末尾时返回 null
|
abstract boolean |
read(IRecord record)
读取一条记录到 IRecord 对象中
文件指针到达末尾时返回 false
复用 IRecord 对象有助于减少内存开销
|
abstract IRecord |
readCoordinate()
读取一条记录的坐标信息 (行列信息)
文件指针到达末尾时返回 null
|
long |
remaining()
获取当前的剩余可读记录数
|
abstract int |
rowIndexOf(edu.sysu.pmglab.container.ByteCode rowName)
查看指定行成员元素在行中的索引
|
int |
rowIndexOf(java.lang.String rowName)
查看指定行成员元素在行中的索引
|
abstract edu.sysu.pmglab.container.ByteCode |
rowNameOf(int rowNameIndex)
获取指定索引的行名
|
boolean |
seek(edu.sysu.pmglab.container.ByteCode row,
edu.sysu.pmglab.container.ByteCode column)
定位到指定的行、列名位置
|
boolean |
seek(edu.sysu.pmglab.container.ByteCode row,
edu.sysu.pmglab.container.ByteCode column,
java.util.function.Function<IRecord,java.lang.Boolean> valueFilter)
定位到指定的行、列名位置
|
boolean |
seek(java.util.function.Function<IRecord,java.lang.Boolean> valueFilter)
定位到满足指定值过滤器的位置
|
abstract boolean |
seek(int rowIndex,
int columnIndex)
定位到指定的行、列索引位置
|
boolean |
seek(int rowIndex,
int columnIndex,
java.util.function.Function<IRecord,java.lang.Boolean> valueFilter)
定位到指定的行、列索引位置
|
boolean |
seek(long recordIndex)
定位到指定的索引位置
|
boolean |
seek(java.lang.String row,
java.lang.String column)
定位到指定的行、列名位置
|
boolean |
seek(java.lang.String row,
java.lang.String column,
java.util.function.Function<IRecord,java.lang.Boolean> valueFilter)
定位到指定的行、列名位置
|
long |
tell()
获取当前的行号
|
java.lang.String |
toString() |
public static MATDecoder of(java.lang.String inputFileName) throws java.io.IOException
inputFileName
- 输入文件java.io.IOException
- 来自 CCF 的 IO 异常public static MATDecoder of(java.io.File inputFile) throws java.io.IOException
inputFile
- 输入文件java.io.IOException
- 来自 CCF 的 IO 异常public static MATDecoder of(edu.sysu.pmglab.unifyIO.Path inputFile) throws java.io.IOException
inputFile
- 输入文件java.io.IOException
- 来自 CCF 的 IO 异常public static MATDecoder of(CCFTable inputFile) throws java.io.IOException
inputFile
- 输入文件java.io.IOException
- 来自 CCF 的 IO 异常public static MATDecoder of(java.lang.String inputFileName, java.lang.String... fieldNames) throws java.io.IOException
inputFileName
- 输入文件fieldNames
- 读取的列字段java.io.IOException
- 来自 CCF 的 IO 异常public static MATDecoder of(java.io.File inputFile, java.lang.String... fieldNames) throws java.io.IOException
inputFile
- 输入文件fieldNames
- 读取的列字段java.io.IOException
- 来自 CCF 的 IO 异常public static MATDecoder of(edu.sysu.pmglab.unifyIO.Path inputFile, java.lang.String... fieldNames) throws java.io.IOException
inputFile
- 输入文件fieldNames
- 读取的列字段java.io.IOException
- 来自 CCF 的 IO 异常public static MATDecoder of(CCFTable inputFile, java.lang.String... fieldNames) throws java.io.IOException
inputFile
- 输入文件fieldNames
- 读取的列字段java.io.IOException
- 来自 CCF 的 IO 异常public static MATDecoder of(java.io.File inputFile, java.lang.Iterable<java.lang.String> fieldNames) throws java.io.IOException
inputFile
- 输入文件fieldNames
- 读取的列字段java.io.IOException
- 来自 CCF 的 IO 异常public static MATDecoder of(java.lang.String inputFileName, java.lang.Iterable<java.lang.String> fieldNames) throws java.io.IOException
inputFileName
- 输入文件名fieldNames
- 读取的列字段java.io.IOException
- 来自 CCF 的 IO 异常public static MATDecoder of(edu.sysu.pmglab.unifyIO.Path inputFile, java.lang.Iterable<java.lang.String> fieldNames) throws java.io.IOException
inputFile
- 输入文件名fieldNames
- 读取的列字段java.io.IOException
- 来自 CCF 的 IO 异常public static MATDecoder of(CCFTable table, java.lang.Iterable<java.lang.String> fieldNames) throws java.io.IOException
table
- 输入数据表fieldNames
- 读取的列字段java.io.IOException
- 来自 CCF 的 IO 异常public IRecord getRecord()
public final IRecord read()
文件指针到达末尾时返回 null
public abstract boolean read(IRecord record)
文件指针到达末尾时返回 false
复用 IRecord 对象有助于减少内存开销
record
- 记录public abstract IRecord readCoordinate()
文件指针到达末尾时返回 null
public final boolean seek(long recordIndex)
recordIndex
- 索引位置 (三元组表中的行索引)public abstract boolean seek(int rowIndex, int columnIndex)
rowIndex
- 行索引columnIndex
- 列索引public final boolean seek(java.lang.String row, java.lang.String column)
row
- 行名column
- 列名public final boolean seek(edu.sysu.pmglab.container.ByteCode row, edu.sysu.pmglab.container.ByteCode column)
row
- 行名column
- 列名public final boolean seek(java.util.function.Function<IRecord,java.lang.Boolean> valueFilter)
valueFilter
- 值过滤器public final boolean seek(int rowIndex, int columnIndex, java.util.function.Function<IRecord,java.lang.Boolean> valueFilter)
rowIndex
- 行索引, -1 表示不限制此值columnIndex
- 列索引, -1 表示不限制此值valueFilter
- 值过滤器public final boolean seek(java.lang.String row, java.lang.String column, java.util.function.Function<IRecord,java.lang.Boolean> valueFilter)
row
- 行名column
- 列名valueFilter
- 值过滤器public final boolean seek(edu.sysu.pmglab.container.ByteCode row, edu.sysu.pmglab.container.ByteCode column, java.util.function.Function<IRecord,java.lang.Boolean> valueFilter)
row
- 行名column
- 列名valueFilter
- 值过滤器public final java.util.Map<java.lang.String,FieldType> getFieldTypes()
public final FieldType getFieldType(java.lang.String fieldName)
fieldName
- 指定的列名public final java.lang.String getFieldName(int fieldIndex)
fieldIndex
- 指定的字段索引public final int getFieldIndex(java.lang.String fieldName)
fieldName
- 指定的字段名public final int getFieldNum()
public final boolean containField(java.lang.String fieldName)
fieldName
- 指定的列名public final MatrixType getMatrixType()
public final edu.sysu.pmglab.unifyIO.Path getFilePath()
public final long getRecordNum()
public abstract int getColumnNum()
public abstract int getRowNum()
public final long tell()
public final long remaining()
public final boolean endOfFile()
public abstract int rowIndexOf(edu.sysu.pmglab.container.ByteCode rowName)
rowName
- 行成员public final int rowIndexOf(java.lang.String rowName)
rowName
- 行成员public abstract int columnIndexOf(edu.sysu.pmglab.container.ByteCode columnName)
columnName
- 列成员public final int columnIndexOf(java.lang.String columnName)
columnName
- 列成员public abstract edu.sysu.pmglab.container.ByteCode rowNameOf(int rowNameIndex)
rowNameIndex
- 行索引public abstract edu.sysu.pmglab.container.ByteCode columnNameOf(int columnNameIndex)
columnNameIndex
- 列索引public MATMeta getMeta()
public final java.util.Iterator<IRecord> iterator()
iterator
在接口中 java.lang.Iterable<IRecord>
public boolean isClosed()
public void close() throws java.io.IOException
close
在接口中 java.io.Closeable
close
在接口中 java.lang.AutoCloseable
java.io.IOException
- 来自 CCF 的 IO 异常public java.lang.Iterable<IRecord> iterator(java.util.Map<java.lang.Integer,edu.sysu.pmglab.container.array.IntArray> pairIndexes, java.util.function.Function<IRecord,java.lang.Boolean> filter)
pairIndexes
- 行列索引信息filter
- 过滤器public java.lang.Iterable<IRecord> iterator(java.util.function.Function<IRecord,java.lang.Boolean> filter)
filter
- 过滤器public java.lang.String toString()
toString
在类中 java.lang.Object