构造器和说明 |
---|
CCFReader(CCFTable table)
构造器方法
|
CCFReader(CCFTable table,
java.lang.Iterable<java.lang.String> fieldNames)
构造器方法
|
CCFReader(CCFTable table,
java.lang.String... fieldNames)
构造器方法
|
限定符和类型 | 方法和说明 |
---|---|
void |
close()
关闭当前文件读取器
|
boolean |
containField(java.lang.String fieldName)
查看当前数据表是否包含指定列名的数据
|
boolean |
endOfFile()
是否到达文件尾部
|
int |
getFieldIndex(java.lang.String fieldName)
获取指定列名的索引
|
java.lang.String |
getFieldName(int fieldIndex)
获取指定列索引的列名
|
java.lang.String[] |
getFieldNames()
获取当前数据表包含的列的列名
|
int |
getFieldNum()
获取当前数据表包含的列数
|
FieldType |
getFieldType(java.lang.String fieldName)
获取指定列名的数据类型
|
java.util.Map<java.lang.String,FieldType> |
getFieldTypes()
获取所有列名及其数据类型
|
edu.sysu.pmglab.unifyIO.Path |
getFilePath()
获取当前数据表读取器绑定的数据表文件对象
|
edu.sysu.pmglab.container.Interval<java.lang.Long> |
getRangeOfRecordIndex()
获取可读的索引范围, 左闭右开
通常情况下它的值为 [0, 总记录数)
|
IRecord |
getRecord()
获取当前读取器绑定的记录类型
|
long |
getRecordNum()
获取当前数据表包含的记录条目数
|
CCFTable |
getTable()
获取当前数据表读取器绑定的数据表对象
|
boolean |
isClosed()
文件是否已关闭
|
java.util.Iterator<IRecord> |
iterator() |
java.lang.Iterable<IRecord> |
iterator(CCFFilter filters)
指定过滤器下的记录迭代器
|
boolean |
limit(edu.sysu.pmglab.container.Interval<java.lang.Long> ranges)
设置全局的读取范围
|
CCFReader |
newInstance()
创建新读取器
|
edu.sysu.pmglab.container.array.BaseArray<CCFReader> |
part(int nParts)
将 CCF 读取器分块
|
IRecord |
read()
读一条记录
|
IRecord |
read(CCFFilter filter)
读一条满足条件要求的记录
该方法速度极快
|
IRecord[] |
read(int nums)
读多条记录
|
boolean |
read(IRecord record)
读一条记录, 并写入到已有的记录对象中
|
boolean |
read(IRecord record,
CCFFilter filters)
读一条满足条件要求的记录, 并写入到已有的记录对象中
该方法速度极快
|
IRecord[] |
reads(CCFFilter filters)
读所有满足条件要求的记录
|
long |
remaining()
获取当前数据表读取器可读的记录条目数
|
boolean |
seek(CCFFilter filters)
将指针跳转到指定的记录行, 并约束相应的值条件.
|
boolean |
seek(long recordIndex)
将指针跳转到指定的记录行.
|
long |
tell()
获取当前的文件指针 (当前指向的记录行索引)
|
java.lang.String |
toString() |
public CCFReader(CCFTable table) throws java.io.IOException
table
- 数据表对象java.io.IOException
- 文件读取过程中产生的 IO 异常 (包括占用、指针异常、不存在等)public CCFReader(CCFTable table, java.lang.String... fieldNames) throws java.io.IOException
table
- 数据表对象fieldNames
- 筛选的列字段java.io.IOException
- 文件读取过程中产生的 IO 异常 (包括占用、指针异常、不存在等)public CCFReader(CCFTable table, java.lang.Iterable<java.lang.String> fieldNames) throws java.io.IOException
table
- 数据表对象fieldNames
- 加载的字段信息java.io.IOException
- 文件读取过程中产生的 IO 异常 (包括占用、指针异常、不存在等)public CCFReader newInstance() throws java.io.IOException
java.io.IOException
- IO 异常public IRecord getRecord()
public int getFieldNum()
public long getRecordNum()
public boolean containField(java.lang.String fieldName)
fieldName
- 列名public java.lang.String[] getFieldNames()
public java.util.Map<java.lang.String,FieldType> getFieldTypes()
public FieldType getFieldType(java.lang.String fieldName)
fieldName
- 指定列名public int getFieldIndex(java.lang.String fieldName)
fieldName
- 指定列名public java.lang.String getFieldName(int fieldIndex)
fieldIndex
- 指定列索引public CCFTable getTable()
public edu.sysu.pmglab.unifyIO.Path getFilePath()
public edu.sysu.pmglab.container.Interval<java.lang.Long> getRangeOfRecordIndex()
public boolean endOfFile()
public IRecord read()
public IRecord read(CCFFilter filter)
filter
- 记录过滤器public IRecord[] read(int nums)
nums
- 读取的条目数public boolean read(IRecord record)
record
- 传入记录对象, 当记录对象是通过 CCFReader.getRecord 产生时, 写入速度会加快public boolean read(IRecord record, CCFFilter filters)
record
- 写入记录filters
- 记录过滤器public IRecord[] reads(CCFFilter filters)
filters
- 记录过滤器public boolean seek(long recordIndex)
recordIndex
- 指定的记录行数public boolean seek(CCFFilter filters)
filters
- 记录过滤器过滤器被提取成多个列过滤器进行处理
public long remaining()
public long tell()
public boolean limit(edu.sysu.pmglab.container.Interval<java.lang.Long> ranges)
ranges
- 记录索引范围 (左闭右开)public java.util.Iterator<IRecord> iterator()
iterator
在接口中 java.lang.Iterable<IRecord>
public java.lang.Iterable<IRecord> iterator(CCFFilter filters)
filters
- 记录过滤器public void close() throws java.io.IOException
close
在接口中 java.io.Closeable
close
在接口中 java.lang.AutoCloseable
java.io.IOException
public boolean isClosed()
public java.lang.String toString()
toString
在类中 java.lang.Object
public edu.sysu.pmglab.container.array.BaseArray<CCFReader> part(int nParts) throws java.io.IOException
nParts
- 分块数java.io.IOException
- IO 异常