Записать в переменную слово из файла02.02.2015, 18:03. Показов 2729. Ответов 14
Метки нет (Все метки)
Здравствуйте, я столкнулся с проблемой чтение определенного слова в файле , а именно :
есть файл (lib.txt) в нем есть запись (что то в виде структуры) : Содержимое файла: 1 Пушкин Утро 2001 2 Есенин Береза 2002 3 ...... ..... ..... и так далее... Есть переменная "Name", в нее мне нужно записать Название (т.е третьи слова в файле) построчно, т.е взяли 1ую строку с помощью getline() нашли там Название и записали в переменную "Name" (ну дальше эту переменную я вывожу в ListBox), и так со всеми строками в файле. Как мне считать и записать именно Название, а не всю строку в переменную?
0
|
|
| 02.02.2015, 18:03 | |
|
Ответы с готовыми решениями:
14
Как записать слово из файла в переменную Записать второе слово из строки в переменную Записать каждое слово строки в новую переменную. |
|
260 / 192 / 60
Регистрация: 12.05.2013
Сообщений: 857
|
|
| 02.02.2015, 18:30 | |
|
Для считывания файла используйте TStringList. У него есть метод (или функция) DelimitedText, которая умеет работать с разделителями и разбивать текст (по дефолту разделителем является пробел).
Разобьете весь Ваш файл через DelimitedText и получите каждое слово с новой строки, и в цикле зная позиции слов (если структура строгая, то числа будут кратны определенной позиции) вставляйте в Вашу переменную. Для помощи посмотрите тут Разбитие строки через DelimitedText
0
|
|
| 02.02.2015, 21:32 [ТС] | ||||||||||||
Вот код, он работает
1 ляляля урурурур 2000000 2 оппопопоп тыцтыцтыц 555555 3 парррарарар шШшашывашывш 9999999898874 Допустим это все что есть в файле.. что делает данный код который должен разбивать (переносить каждое слово - хотя мне кажется есть другой способ хм) , он берет и просто напросто только последнюю строку переносит ибо вот так 3 парррарарар шШшашывашывш 9999999898874 А где все остальное? неужто я ошибся в коде, и тогда сразу вопрос как из всего этого разбитого файла записать в поле Edit\Label определенные названия? слова в файле?
0
|
||||||||||||
|
260 / 192 / 60
Регистрация: 12.05.2013
Сообщений: 857
|
||||||
| 02.02.2015, 23:19 | ||||||
1
|
||||||
| 03.02.2015, 00:08 [ТС] | ||
|
Прикрепил программу Этот код размещается в Form3 на ComboBox1 Создается 2 папки для библиотеки и для содержимого Form2 работает корректно а вот с Form3 именно с выделением нужного слова в строке файла и добавление его вListBox какая то лажа.. P.S на Form3 висит 2 Memo Memo2 - сделал для проверки сие разбивки строки файла.
0
|
||
|
260 / 192 / 60
Регистрация: 12.05.2013
Сообщений: 857
|
||||||
| 03.02.2015, 08:15 | ||||||
1
|
||||||
|
Модератор
|
|||||||
| 03.02.2015, 08:23 | |||||||
|
Ну вот так как-то...
Единственное, о чем надо позаботиться - это то, чтобы названия, содержащие 2 и более слова, были заключены в кавычки.
2
|
|||||||
|
260 / 192 / 60
Регистрация: 12.05.2013
Сообщений: 857
|
|
| 03.02.2015, 08:27 | |
|
Nyiann, хочу заметить что у D1973, более гибкий алгоритм :3
1
|
|
| 03.02.2015, 15:15 [ТС] | |||||||||||||||||||||
|
demon_7,D1973, Спасибо, я разобрался сегодня сам (: теперь я понимаю как это все работает , у меня выводилась последняя строка файла в разбитом виде из-за цикла вывода в Memo, его надо было поместить в цикл где собственно идет разбивка строки (:
вот код :
Я вот так сделал , но выдает ошибку :с
0
|
|||||||||||||||||||||
|
Я Фоюмчанин ? дааааа)
|
|
| 03.02.2015, 15:22 | |
|
Nyiann, Этот так интересно скинуть куски кода, скрин ошибки и спросить в чем дело - тут тоже обычные люди без экстрасенсорных способностей
![]() Ставите точку останова и дебагом шлепаете шаг за шагом и находите где ошибка - дерзайте. Проверяйте переменные - что в них хранится, что куда передается.
0
|
|
|
260 / 192 / 60
Регистрация: 12.05.2013
Сообщений: 857
|
||||||||||||||||
| 03.02.2015, 15:25 | ||||||||||||||||
|
А это норм ?
0
|
||||||||||||||||
|
Почетный модератор
5851 / 2862 / 392
Регистрация: 01.11.2011
Сообщений: 6,906
|
|
| 03.02.2015, 15:28 | |
|
0
|
|
| 03.02.2015, 15:49 [ТС] | ||||||
|
SatanaXIII, а что тут не понятного?
есть структура библиотека, у нее есть поля (Автор, Id, Год, Название), как бы все верно , к тому же смысл придраться к названиям? ivan.-94, был бы таким умным не писал бы здесь, ибо билдер как таковой не преподают (тока дают задания и все мол изучили консоль с++ теперь это по зубам все) , все сам изучаю и обращаюсь сюда за помощью хм (: И способностей не надо просто прикреплю файл вот и все дела. demon_7, Конкретика, Мне нужно чтобы при нажатии(выборе) параметра\названия в ListBox1 (там у каждой строки есть свой id) в поля Edit2 и Edit3 вывелось то что лежит(записано\добавлено) в массив bib. Компилятор все пропускает и запускает программу тут ошибок нету, я сделал динамический массив дабы туда записывать информацию о Книгах или книге. Для того чтоб вывести в Edit3 и Edit4 я написал вот этот код
bib[ListBox1->ItemIndex].autor - Тут это (ListBox1->ItemIndex) играет роль индекса ID ибо если мы кликнем по полю ListBox И выберем там что то у нас запишется в место этого (ListBox1->ItemIndex) № выбранного нами элемента.. Прикрепил файлы
0
|
||||||
|
Я Фоюмчанин ? дааааа)
|
||
| 03.02.2015, 16:13 | ||
|
Добавлено через 12 минут А что вам собственно у вас не нравится? все правильно Добавлено через 1 минуту Nyiann, У вас структура пустая, вы же и создаете и заполняете массив bibl* bib = new bibl[col1]; в void __fastcall TForm3::ComboBox1Change(TObject *Sender) У вас же массив не глобальный! он существует только в ComboBox1Change Добавлено через 2 минуты В void __fastcall TForm3::ComboBox1Change(TObject *Sender) Замените bibl* bib = new bibl[col1] на bib = new bibl[col1] Добавлено через 51 секунду И зачем вы описываете структуру 2 раза? и в *.cpp и в *.h - удалите из cpp Добавлено через 2 минуты
1
|
||
| 03.02.2015, 16:16 [ТС] | |||
|
bibl* bib; а теперь все работает (: спасибо Все спасибо тему можно закрыть получается :з
0
|
|||
| 03.02.2015, 16:16 | |
|
Помогаю со студенческими работами здесь
15
Открытие файла через OpenFileDIalog и записать имя файла в переменную Записать в переменную число из файла
Записать в переменную заданный элемент файла Искать еще темы с ответами Или воспользуйтесь поиском по форуму: |
|
Новые блоги и статьи
|
|||
|
SDL3 для Desktop (MinGW): Рисуем цветные прямоугольники с помощью рисовальщика SDL3 на Си и C++
8Observer8 17.03.2026
Содержание блога
Финальные проекты на Си и на C++:
finish-rectangles-sdl3-c. zip
finish-rectangles-sdl3-cpp. zip
|
Символические и жёсткие ссылки в Linux.
algri14 15.03.2026
Существует два типа ссылок — символические и жёсткие.
Ссылка в Linux — это запись в каталоге, которая может указывать либо на inode «файла-ИСТОЧНИКА», тогда это будет «жёсткая ссылка» (hard link),. . .
|
[Owen Logic] Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ФедосеевПавел 14.03.2026
Поддержание уровня воды в резервуаре количеством включённых насосов: моделирование и выбор регулятора
ВВЕДЕНИЕ
Выполняя задание на управление насосной группой заполнения резервуара,. . .
|
делаю науч статью по влиянию грибов на сукцессию
anaschu 13.03.2026
прикрепляю статью
|
|
SDL3 для Desktop (MinGW): Создаём пустое окно с нуля для 2D-графики на SDL3, Си и C++
8Observer8 10.03.2026
Содержание блога
Финальные проекты на Си и на C++:
hello-sdl3-c. zip
hello-sdl3-cpp. zip
Результат:
|
Установка CMake и MinGW 13.1 для сборки С и C++ приложений из консоли и из Qt Creator в EXE
8Observer8 10.03.2026
Содержание блога
MinGW - это коллекция инструментов для сборки приложений в EXE. CMake - это система сборки приложений. Здесь описаны базовые шаги для старта программирования с помощью CMake и. . .
|
Как дизайн сайта влияет на конверсию: 7 решений, которые реально повышают заявки
Neotwalker 08.03.2026
Многие до сих пор воспринимают дизайн сайта как “красивую оболочку”. На практике всё иначе: дизайн напрямую влияет на то, оставит человек заявку или уйдёт через несколько секунд.
Даже если у вас. . .
|
Модульная разработка через nuget packages
DevAlt 07.03.2026
Сложившийся в . Net-среде способ разработки чаще всего предполагает
монорепозиторий в котором находятся все исходники.
При создании нового решения, мы просто добавляем нужные проекты
и имеем. . .
|