text

package
v0.0.0-...-a11b62f Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Apr 12, 2021 License: GPL-3.0 Imports: 9 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

This section is empty.

Functions

func Decode

func Decode(r io.Reader, isGz bool, isGbk bool) io.Reader

Decode 对 io.Reader 进行解码,处理 gz 文件和 GBK 编码的文件

func Slice

func Slice(strs []string) (record []interface{})

Slice 将字符串切片转换成空接口切片

func UnQuote

func UnQuote(s []string) (d []string)

UnQuote ConvertFunc 删除字符串的引号

Types

type BasicReader

type BasicReader struct {
	bufio.Scanner
	// contains filtered or unexported fields
}

BasicReader 读取文本的基础实例

func NewTestReader

func NewTestReader(r io.Reader) BasicReader

NewTestReader 创建 Reader

func (*BasicReader) Next

func (r *BasicReader) Next() bool

Next 获取下一条数据

func (*BasicReader) Read

func (r *BasicReader) Read() []interface{}

Read 读取当前数据

func (*BasicReader) SetRecord

func (r *BasicReader) SetRecord(record []interface{})

SetRecord 设置当前记录的值

type ConvertFunc

type ConvertFunc func([]string) []string

ConvertFunc 转换函数

func Exclude

func Exclude(columns ...int) ConvertFunc

Exclude ConvertFunc 剔除指定的列

func Include

func Include(columns ...int) ConvertFunc

Include ConvertFunc 仅包含指定的列

type CsvReader

type CsvReader struct {
	csv.Reader
	// contains filtered or unexported fields
}

CsvReader 读取 Csv 文件

func NewCsvReader

func NewCsvReader(r io.Reader) *CsvReader

NewCsvReader 新建CsvReader

func (*CsvReader) Next

func (r *CsvReader) Next() (exists bool)

Next 判断是否还有数据

func (*CsvReader) Read

func (r *CsvReader) Read() []interface{}

Read 读取一行记录

type Data

type Data interface {
	Close()
	Write(...interface{})
}

Data Data Channel

type File

type File interface {
	FileInfo() os.FileInfo
	Open() (io.ReadCloser, error)
}

File tar、zip 压缩包获取文

type FixedReader

type FixedReader struct {
	BasicReader
	// contains filtered or unexported fields
}

FixedReader 固定偏移量的文本读取

func NewFixedReader

func NewFixedReader(r io.Reader, offsets []int) *FixedReader

NewFixedReader 创建固定偏移量的文本读取

func (*FixedReader) Next

func (r *FixedReader) Next() bool

Next 读取下一行数据

type OffsetSpliter

type OffsetSpliter struct {
	// contains filtered or unexported fields
}

OffsetSpliter 定位分割

func NewOffsetSpliter

func NewOffsetSpliter(offsets []int) *OffsetSpliter

NewOffsetSpliter OffsetSpliter 构造函数

func (*OffsetSpliter) Split

func (s *OffsetSpliter) Split(bytes []byte) (record []interface{})

Split 执行拆分

type Reader

type Reader struct {
	*bufio.Scanner
	Split SplitFunc // 拆分行函数
	// contains filtered or unexported fields
}

Reader 读取数据模块

func NewReader

func NewReader(r io.Reader, skipHeader bool, split SplitFunc, converters ...ConvertFunc) *Reader

NewReader 数据模块构造函数

func (*Reader) ReadAll

func (r *Reader) ReadAll(d Data)

ReadAll 读取全部数据

type SplitFunc

type SplitFunc func(*bufio.Scanner) []string

SplitFunc 拆分函数

func NewSepSpliter

func NewSepSpliter(sep string) SplitFunc

NewSepSpliter 创建拆分器

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL