| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > Центр помощи > [C++ Builder] импорт txt в таблицу |
| Автор: SAnatoliy 17.3.2009, 17:34 |
| Помогите пожалуйста. С++ Builder 5. Нужно разобрать текстовый файл и перенести все содержимое в таблицу для дальнейшей обработки. текстовый файл строго определенного формата: 8 столбцов разделенные пробелом. значения в столбцах могут быть разной дилнны, но не более прив. фрагмента. Есть текстовый файл данной структуры: !а123456 0987654 б123456 1234567 01-01-09 00:00:00 10 20 !а123456 0987654 б123456 1234567 01-01-09 00:00:00 10 20 и т.д. Как я понимаю мне надо написать цикл: Считываем колличество строк в файле и запускаем цикл -> берем одну строку и присваем значения столбцов переменным -> пишем в БД -> и так до последней строки текстового файла. Может есть решение лучше. Но я незнаю. Помогите пожалуйста примером. |
| Автор: Rififi 17.3.2009, 18:53 |
| SAnatoliy, Как я понимаю мне надо написать цикл: Считываем колличество строк в файле и запускаем цикл -> берем одну строку и присваем значения столбцов переменным -> пишем в БД -> и так до последней строки текстового файла. это подойдёт, если тебе для чего-то нужно знать общее количество строк в файле. иначе крути цикл пока не конец файла и по-очереди доставай строки |
| Автор: SAnatoliy 17.3.2009, 19:23 | ||
Согласен с Вами. А может кто нибудь показать на примере как писать сие надо |
| Автор: Rififi 17.3.2009, 20:50 | ||
SAnatoliy,
|
| Автор: SAnatoliy 17.3.2009, 21:28 | ||||
Прошу прощение конечно(. Но можно подробней как: Разбираем полученную строку, достаём параметры, |
| Автор: dumb 17.3.2009, 21:39 |
| http://forum.vingrad.ru/index.php?showtopic=152634&view=findpost&p=1144166 ps. если этого будет недостаточно для самостоятельного решения, то тема уедет в "Центр помощи". |
| Автор: Rififi 17.3.2009, 21:40 |
| SAnatoliy, например, с помощью std::stringstream или sscanf. Юзай поиск по форуму и/или гоогле |
| Автор: mrbrooks 18.3.2009, 08:50 |
| Тут решений воз и целая тележка. Я бы работал со списками. |
| Автор: dumb 18.3.2009, 09:08 |
| Модератор: Тема перенесена! |
| Автор: SAnatoliy 18.3.2009, 10:04 |
| Может кто нибудь набросать работающий пример. Пожалуйста. |
| Автор: zim22 18.3.2009, 11:11 |
разве в БД нет импорта с текстовых файлов? если есть - просто преобразуй твой текстовый файл к необходимому формату. например csv |
| Автор: SAnatoliy 18.3.2009, 11:23 | ||||
есть, но мне надо у себя и просто в таблицу, а в БД это уже пожже..
|
| Автор: zim22 18.3.2009, 11:41 | ||
|
| Автор: SAnatoliy 18.3.2009, 13:39 | ||
а можно комментарии к коду?
|
| Автор: zim22 18.3.2009, 13:56 | ||
|
| Автор: Anikmar 18.3.2009, 14:28 |
| zim22, а в стихах комментарии слабо? |
| Автор: SAnatoliy 18.3.2009, 15:01 | ||||
нда, вопросы всеж остались. не пойму где указывается в коде разделитель, по какому признаку мы разделяем столбцы (мне нужен пробел, но формат может поменятся на ";" как мне это указать?) ? Последняя строка "Выводим два слова" имеется ввиду присвоили данным переменным значение первых двух столбцов? P.S. zim22 Спасибо за развернутые комментарии, неожидал что так + |
| Автор: zim22 18.3.2009, 15:41 | ||
Anikmar,
|
| Автор: Anikmar 18.3.2009, 16:36 |
| zim22, О!!! Это пять!!!!!! Супер Заслуженный +1! |
| Автор: zim22 18.3.2009, 17:29 |
| Anikmar, |
| Автор: SAnatoliy 20.3.2009, 11:29 |
| вопрос решен с другом топике: http://forum.vingrad.ru/forum/topic-251788/kw-%D1%80%D0%B0%D0%B7%D0%B1%D0%BE%D1%80-%D1%82%D0%B5%D0%BA%D1%81%D1%82%D0%BE%D0%B2%D0%BE%D0%B3%D0%BE-%D1%84%D0%B0%D0%B9%D0%BB%D0%B0-%D0%BF%D0%BE%D1%81%D1%82%D1%80%D0%BE%D1%87%D0%BD%D0%BE.html |