golang ввод с клавиатуры

Пользователь

julian

от julian , в категории: Общие вопросы , год назад

Всем привет, ребят. Я начинающий программист. Подскажите, пожалуйста, как в Golang’е производить ввод с клавиатуры через консоль? Можно на примерах.


Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp Pocket

6 ответов

Пользователь

от brain.von , год назад

У каждого процесса есть свой стандартный ввод, вывод и дескриптор файла ошибок. stdin выступает в роли процесса ввода данных. Данная инструкция описывает, как читать данные из stdin.


Пользователь

от lauren , год назад

Вот для примера программа, где используется функция stdin – ввод с клавиатуры:

Пользователь

от lauren , год назад

stdin в Go можно получить через Stdin из пакета os. По факту, это тип File, что имплементирует интерфейс Reader. Чтение из Reader очень простое. Предыдущий код показывает три самых частых случая того, как читать из Stdin.

Пользователь

от lauren , год назад

Первая опция показывает, как использовать пакет fmt, что предоставляет функции Scan, Scanf и Scanln. Функция Scanf читает ввод и сохраняет его в переменную (или переменные). Преимущество Scanf в том, что вы можете определить формат сканируемого значения. Функция Scan только читает ввод и сохраняет его в переменную (без предварительного форматирования), а Scanln, как можно понять по названию, читает ввод, что заканчивается обрыванием строки \n.


Пользователь

от lauren , год назад

Scanner, из второго примера, предоставляет удобный способ для сканирования более крупного ввода. Scanner содержит функцию Split, через которую можно определить настраиваемую функцию разделения строки. К примеру, для сканирования слов из stdin вы можете использовать bufio.ScanWords и предварительно определенный SplitFunc.


Пользователь

от julian , год назад

Спасибо большое, друзья. Теперь мне всё стало понятно. Ввод в консоле – самое простое, что может быть, но даже в этом я не смог сам разобраться. ((