Documentation ¶
Index ¶
- func FindLineChunks(file *os.File, chunkSize int64) [][2]int64
- func FindLineChunksByOffset(file *os.File, offset, chunkSize int64) [][2]int64
- func IsDir(path string) (bool, error)
- func LineCount(filePath string) int
- func PathExist(path string) (bool, error)
- func Paths(dir string) []string
- func ReadBlockHook(filePath string, bufferSize int, hook func(data []byte)) error
- func ReadLine(filePath string, hook func(line string)) error
- func ReadLineWithParallel(filename string, chunkSize int64, handlerFunc func(string), start ...int64) (n int64, err error)
- func ReadOnce(filePath string) ([]byte, error)
- func WriterFile(filePath string, content []byte) error
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func FindLineChunks ¶ added in v0.1.0
FindLineChunks 查找文件按照每行划分的分块,每个分块的大小将在 chunkSize 和分割后的分块距离行首及行尾的距离中范围内
- 使用该函数得到的分块是完整的行,不会出现行被分割的情况
- 当过程中发生错误将会发生 panic
- 返回值的成员是一个长度为 2 的数组,第一个元素是分块的起始位置,第二个元素是分块的结束位置
func FindLineChunksByOffset ¶ added in v0.3.3
FindLineChunksByOffset 该函数与 FindLineChunks 类似,不同的是该函数可以指定 offset 从指定位置开始读取文件
func ReadBlockHook ¶
ReadBlockHook 分块读取文件
- 将filePath路径对应的文件数据并将读到的每一部分传入hook函数中,当过程中如果产生错误则会返回error。
- 分块读取可以在读取速度和内存消耗之间有一个很好的平衡。
func ReadLine ¶ added in v0.1.0
ReadLine 分行读取文件
- 将filePath路径对应的文件数据并将读到的每一行传入hook函数中,当过程中如果产生错误则会返回error。
func ReadLineWithParallel ¶ added in v0.1.0
func ReadLineWithParallel(filename string, chunkSize int64, handlerFunc func(string), start ...int64) (n int64, err error)
ReadLineWithParallel 并行的分行读取文件并行处理,处理过程中会将每一行的内容传入 handlerFunc 中进行处理
- 由于是并行处理,所以处理过程中的顺序是不确定的。
- 可通过 start 参数指定开始读取的位置,如果不指定则从文件开头开始读取。
Types ¶
This section is empty.
Click to show internal directories.
Click to hide internal directories.