Как преобразовать массив байт в массив строк подгруженных из файла?

Только начинаю изучать Go перейдя с Python. Посмотрел код в Google и не нашел нормального пояснения к данному вопросу. Сразу скажу, что знаю об I/O и просто обычном чтении побайтово из файла.

Вопрос: Как считать строки из файла, сложив их в массив или вектор строкового типа?

Файл.txt (не CSV):

1,pol\n
2,kjksk\n
3,01203103\n

Предполагаемый вектор или массив:

["1,pol", "2,kjksk", "3,01203103"]

P.S. Пожалуйста, скиньте полный код в виде функции или пакета.


Ответы (1 шт):

Автор решения: Ainar-G

В документации к структуре Scanner из пакета bufio приводится пример, который легко модифицируется под ваши нужды:

func main() {
    f, err := os.Open("./file.txt")
    if err != nil {
        panic(err)
    }
    defer f.Close()

    var lines []string
    scanner := bufio.NewScanner(f)
    for scanner.Scan() {
        lines = append(lines, scanner.Text())
    }

    err = scanner.Err()
    if err != nil {
        panic(err)
    }

    fmt.Printf("%#v\n", lines)
}
→ Ссылка