Skip to content

Commit 1d6e7c0

Browse files
committed
chore: fix ReadFileByLine for large files
1 parent 72da941 commit 1d6e7c0

File tree

1 file changed

+11
-0
lines changed

1 file changed

+11
-0
lines changed

files/files.go

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -218,7 +218,18 @@ func (f *Files) ReadFileByLine(filePath string) ([]string, error) {
218218
defer file.Close()
219219

220220
var lines []string
221+
222+
info, err := file.Stat()
223+
if err != nil {
224+
return nil, err
225+
}
226+
227+
var maxSize int
221228
scanner := bufio.NewScanner(file)
229+
maxSize = int(info.Size())
230+
buffer := make([]byte, 0, maxSize)
231+
scanner.Buffer(buffer, maxSize)
232+
222233
for scanner.Scan() {
223234
lines = append(lines, scanner.Text())
224235
}

0 commit comments

Comments
 (0)