public class CCFWriter
extends java.lang.Object
implements java.lang.AutoCloseable, java.io.Closeable
列字段格式声明
限定符和类型 | 类和说明 |
---|---|
static class |
CCFWriter.Builder
CCFWriter 构造器
|
限定符和类型 | 方法和说明 |
---|---|
void |
close()
关闭文件流
|
void |
flush()
刷新缓冲区 (将当前的缓冲数据写入一个新的块)
|
edu.sysu.pmglab.container.IndexableSet<java.lang.String> |
getFieldNames()
获取当前列名
|
int |
getFieldNum()
获取当前数据表包含的列数
|
FieldType |
getFieldType(java.lang.String fieldName)
获取指定列名的数据类型
|
java.util.Map<java.lang.String,FieldType> |
getFieldTypes()
获取当前列名及其数据类型
|
edu.sysu.pmglab.container.File |
getOutputFile()
获取输出文件
|
IRecord |
getRecord()
获取当前读取器绑定的记录类型
|
long |
getRecordNum()
获取当前已写入的记录条目数
|
void |
write(IRecord record)
写入一条数据记录
|
void |
write(java.lang.Iterable<IRecord> records)
写入多条数据记录
|
CCFWriter |
writeMeta(edu.sysu.pmglab.container.ByteCode key,
edu.sysu.pmglab.container.ByteCode value)
写入一条 meta 注释
|
CCFWriter |
writeMeta(CCFMeta meta)
写入 meta 注释
|
CCFWriter |
writeMeta(java.lang.String key,
java.lang.String value)
写入一条 meta 注释
|
public IRecord getRecord()
public void write(IRecord record) throws java.io.IOException
record
- Record (只读) 类型的数据记录java.io.IOException
- 文件读取过程中产生的 IO 异常 (包括占用、指针异常、不存在等)BrokenChunkedColumnarFormatException
- 当任何一列包含的块数过多, 抛出文件异常InvalidRecordException
- 当记录的任意字段值为 null 或格式类型不匹配时, 抛出非法记录异常public void write(java.lang.Iterable<IRecord> records) throws java.io.IOException
records
- Record (只读) 类型的数据记录java.io.IOException
- 文件读取过程中产生的 IO 异常 (包括占用、指针异常、不存在等)BrokenChunkedColumnarFormatException
- 当任何一列包含的块数过多, 抛出文件异常InvalidRecordException
- 当记录的任意字段值为 null 或格式类型不匹配时, 抛出非法记录异常public CCFWriter writeMeta(java.lang.String key, java.lang.String value)
key
- 注释键value
- 注释值public CCFWriter writeMeta(edu.sysu.pmglab.container.ByteCode key, edu.sysu.pmglab.container.ByteCode value)
key
- 注释键value
- 注释值public edu.sysu.pmglab.container.File getOutputFile()
public void flush() throws java.io.IOException
java.io.IOException
- 文件读取过程中产生的 IO 异常 (包括占用、指针异常、不存在等)public long getRecordNum()
public int getFieldNum()
public java.util.Map<java.lang.String,FieldType> getFieldTypes()
public edu.sysu.pmglab.container.IndexableSet<java.lang.String> getFieldNames()
public FieldType getFieldType(java.lang.String fieldName)
fieldName
- 指定的列名public void close() throws java.io.IOException
close
在接口中 java.io.Closeable
close
在接口中 java.lang.AutoCloseable
java.io.IOException