Как вывести нужную строку из файла?

Для того чтобы вывести нужную строку из файла в языке программирования Go, необходимо выполнить следующие шаги:

1. Открыть файл для чтения. Для этого в Go используется функция os.Open(), которая принимает в качестве аргумента путь к файлу и возвращает указатель на объект os.File и ошибку, если таковая возникла. Например:

file, err := os.Open("file.txt")
if err != nil {
    log.Fatal(err)
}
defer file.Close()

2. Создать буфер для чтения содержимого файла. В Go для этого можно использовать тип bufio.Reader. Создание объекта bufio.Reader осуществляется через функцию bufio.NewReader(), которой передается открытый файл. Например:

reader := bufio.NewReader(file)

3. Прочитать содержимое файла построчно. В Go для этого можно использовать метод ReadString() объекта bufio.Reader. Данный метод принимает в качестве аргумента символ-разделитель (обычно это символ новой строки n) и возвращает строку до этого символа-разделителя и ошибку. Например:

line, err := reader.ReadString('n')
if err != nil {
    log.Fatal(err)
}

fmt.Println(line)

4. Повторять шаг 3, пока не будет найдена нужная строка или пока не будет достигнут конец файла. Например:

targetLine := "нужная строка" // Нужная строка, которую мы хотим найти
found := false

for {
    line, err := reader.ReadString('n')
    if err != nil {
        if err == io.EOF {
            break
        }
        log.Fatal(err)
    }

    if line == targetLine {
        found = true
        break
    }
}

if found {
    fmt.Println("Нужная строка найдена!")
} else {
    fmt.Println("Нужная строка не найдена.")
}

5. Не забывайте закрывать файл после завершения работы с ним, используя функцию file.Close().

В результате выполнения данного кода, если нужная строка будет найдена, она будет выведена в консоль. В противном случае будет выведено сообщение о том, что нужная строка не была найдена.