|
0 / 0 / 0
Регистрация: 06.08.2023
Сообщений: 4
|
||||||
Как вывести в консоль текст построчно?06.08.2023, 18:20. Показов 3046. Ответов 44
Метки нет (Все метки)
добрый день.
подскажите пожалуйста, как вывести в консоль текст построчно. задача, при нажатие "ввод", чтобы выводились строки последовательно. спасибо Добавлено через 1 час 44 минуты пишу функцию.
подскажите, что правильно надо написать? что бы при нажатие enter выводилась очередная строка?
0
|
||||||
| 06.08.2023, 18:20 | |
|
Ответы с готовыми решениями:
44
Как построчно вывести текст из документа? |
|
Администратор
|
||||||||
| 08.08.2023, 15:05 | ||||||||
0
|
||||||||
|
|
||||||||
| 08.08.2023, 15:35 | ||||||||
|
OwenGlendower, да,
ReadAllLines всегда больше, но сравнительно не на много. Мне не ясна сама идея этого всего. Предположим, считанные строки мы никуда не сохраняем (записываем), а просто выводим на консоль. Тогда да, File.ReadLines полностью подходит. Но если начать все считанное куда-нибудь сохранять, например в список, то преимущества ReadLines нивелируются. Кстати, если вот копнуть глубже, куда-нибудь в сторону занимаемой памяти вывода самой консоли...метод January29 88 MB метод с ReadAllLines 104 MB Может быть я все-таки чего-то не уловил, но как я понял: например, считали строку №3, вывели в консоль. Далее - нужно считать только строку №4 без всего остального. Т.е. не накапливая их в памяти процесса... Добавлено через 17 минут
0
|
||||||||
|
Администратор
|
|||||
| 08.08.2023, 15:36 | |||||
|
0
|
|||||
|
|
||
| 08.08.2023, 15:41 | ||
|
Вопрос на самом деле интересный, я тоже когда-то им задавался. В целях, так сказать исследования проблемы подключился. Ни в коем случае не навязываю никому своих мыслей..
1
|
||
|
3271 / 3378 / 559
Регистрация: 17.02.2019
Сообщений: 5,295
|
|||||||
| 08.08.2023, 18:53 | |||||||
0
|
|||||||
|
Администратор
|
||
| 08.08.2023, 19:36 | ||
|
1
|
||
|
|
|||||
| 08.08.2023, 22:37 | |||||
|
Добавлено через 3 минуты Добавлено через 2 минуты
1
|
|||||
|
3271 / 3378 / 559
Регистрация: 17.02.2019
Сообщений: 5,295
|
|
| 08.08.2023, 23:00 | |
|
0
|
|
|
Администратор
|
||
| 08.08.2023, 23:13 | ||
|
0
|
||
|
|
||
| 08.08.2023, 23:19 | ||
|
0
|
||
|
|
|||
| 08.08.2023, 23:42 | |||
|
OwenGlendower, последний вопрос если позволите: из этого вашего поста, получается после чтения перед циклом GC ее съедает, но оставляет ссылку на массив (адрес в памяти)? Ссылка на массив строк остается и вызывается в дальнейшем. Неочевидный нюанс, или я неправильно (и студия тоже) показывает мне реальную выделенную память текущей задачи...? Добавлено через 2 минуты
0
|
|||
|
|
||||||
| 08.08.2023, 23:46 | ||||||
|
Окей, я придумал ситуацию, которая не противоречит оригинальному условию, но при этом потребует дополнительной оптимизации -- каждая строка будет ооооооочень длинной, скажем на десятки миллионов символов. Вот тут можно с уверенностью сказать что необходимо считывать поблочно (приблизительно так)
0
|
||||||
|
Администратор
|
||
| 08.08.2023, 23:48 | ||
|
0
|
||
|
|
||
| 08.08.2023, 23:54 | ||
|
Есть конечно вещи, которые стараются делать всегда, а не говнокодить простыню, но на мой взгляд это тот случай.
0
|
||
|
|
|||
| 09.08.2023, 00:07 | |||
|
Блин, то ли я уже старею и не могу толком донести мысль, то ли че... Добавлено через 12 минут Wolfdp, ведь вы перед тем как разрабатывать текущие задачи не изучали все нюансы консоли в течение 5-6 лет? Hello World получилось и пошли дальше, верно? (условно). Тут вроде все ясно и понятно, но если вникнуть в детали -- Ага! Что-то тут не так... Хотя пишем уже MVVM'ы и многослойные базы...
0
|
|||
|
|
||
| 09.08.2023, 00:13 | ||
|
- я ниже написал что это явно излишняя оптимизация, для специфического случая - это не противоречит условию, в отличии от вашего требования "начать считывание, пропустив большой кусок файла" - этот пример как раз решает вопрос перфоманса, тем что не создаются новые строки, а используется общий буфер.
0
|
||
|
403 / 265 / 69
Регистрация: 12.04.2020
Сообщений: 1,404
|
|
| 09.08.2023, 00:14 | |
|
0
|
|
|
|
||||
| 09.08.2023, 00:24 | ||||
|
Добавлено через 3 минуты
0
|
||||
|
|
||||||||
| 09.08.2023, 01:04 | ||||||||
|
Если влепить банальный foreach(var s in Lines) Console.WriteLine(s);, то программа выедает до 17Мб памяти (по скорости хз, я не дожидался окончания работы) и переодически вызывается GC. Подход через буфер отъедает до 13Мб и GC не задействуется (по крайне мере на мониторинговой тулзе).Но это очень не гибкое решение (это скорее ТСу адресуется) в плане "считать строку и что с ней сделать", так как в общем случае у нас подразуевается что есть некий Action<string>, которому мы скармливаем строку, что опять приводит к тому что строка таки появится в памяти приложения и GC придется её убирать. В общем не стоит воспринимать это как эталон.
0
|
||||||||
| 09.08.2023, 01:04 | |
|
Как вывести текст построчно на экран Ввести построчно текст программы написанной на языке ПАСКАЛЬ. Заменить понятия тип INTEGER на ЦЕЛОЕ, REAL на ВЕЩЕСТВЕННОЕ. Вывести построчно получен Как из массива строк вывести текст в мемо, одной операцией, не выводя построчно? Как вывести текст на консоль Как вывести текст в консоль Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
FPS контроллер с анимированными Y-Bot и 3D-звуком miniaudio (Box3D, Recast, BehaviorTree.CPP, ozz-animation, ImGui, OpenGL и SDL3)
8Observer8 18.10.2026
Содержание блога | English Version
Полное мультиплатформенное руководство по стартовому проекту с FPS-контроллером игрока, анимированными роботами Y-Bot с 4-слойным блендингом, 3D-физикой Box3D,. . .
|
Локальный http сервер
Argus19 17.10.2026
Локальный http сервер
На работе, на двух локальных компьютерах круглосуточно работают программы опроса приборов с записью в книги Excel,которые раз в сутки записываются на сервер компании. Т. к. . . .
|
Копировать Windows на новый диск на UEFI
damix 17.10.2026
https:/ / uriesk. wordpress. com/ 2016/ 11/ 01/ move-window-10-to-ssd-on-a-uefi-dualboot-system-with-basic-linux-tools/
TL DR
Вставляем диск, а старый подключаем через переходник, грузимся с лайва. . .
|
ИИ не может найти нужный язык в списке
Supersumestria 05.10.2026
Я ему даю вот такое изображение и прошу найти и подчеркнуть немецкий язык.
Возвращает он вот это:
https:/ / i. **********/ vqBWLe2. png
Нужную строчку в 3й колонке просто выдумал. .
Это. . .
|
|
Новая последняя моя музыка в SUNO
zorxor 05.10.2026
Здравствуйте, дорогие мои друзья! С большой радостью я хотел бы представить вам свою новую последнею музыку, которую сгенерировала мне по моей просьбе нейросеть SUNO. С уважением, zorxor.
Это. . .
|
Программный домашний кинотеатр
russiannick 27.09.2026
Сподобился на программный домашний кинотеатр. В качестве ЯВУ по традиции выбрал js.
В помощники взял Яндекс-Алису.
Было создано три зала на разные интересы.
исторические и ретро
сериал Хичкок. . .
|
Беседа с ИИ о программистах, недопускающих к созданию и правке кода генеративные ИИ и причины этого
zorxor 21.09.2026
Раньше я радовался или получал некоторые эмоции, пусть небольшие, но всё же, от самого процесса написания кода, рекомпиляции и запуска, видя постепенное развитие программы и прочее. А теперь лень. . .
|
Мобильное приложение ColorStep
pavlinmavlin 17.09.2026
Реализовал приложение Красный, Зеленый, Синий в Unity3d + c#.
Название изменил на ColorStep.
Приложение прошло модерацию и теперь доступно для скачивания. Делал его сам, шаг за шагом — и вот,. . .
|