Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2003.07.24;
Скачать: [xml.tar.bz2];

Вниз

Как из txt перебросить данные в dbf   Найти похожие ветки 

 
boka   (2003-06-27 09:24) [0]

Уважаемые мастера, помогите разрешить следующую проблему: Имеется txt файл. Пробел как разделитель применять нельзя, т.к. имеются пустые значения в столбцах. Сам файл не имеет конкретного разделителя столбцев. Заранее спасибо


 
Соловьев   (2003-06-27 09:28) [1]

в демках к делфи есть компонент по работе с текстовыми файлами как с БД. ну или через Excel - он это делает очень даже хорошо.


 
Anatoly Podgoretsky   (2003-06-27 09:32) [2]

Ну и как ты предполагаешь в этих случаях делить строку на поля, если ничего нет. Если ты формируешь файл, то существет несколько общепринятых форматов, наиболее подходящих для этой цели

1. Tab Delimited
2. Comma Separatetd Value (CSV)
3. Fixed Length


 
boka   (2003-06-27 11:31) [3]

Фай формирую не я. Мне его представляют в таком формате. Его формат следуюший
________________________________________________________________
Дата Время Номер ТО Количество Услуга
________________________________________________________________
04/05/03 16:05 0097 5 5.00 отделка
04/05/03 16:05 0097 5.00 отделка
04/05/03 16:05 0097 5 5.00 отделка
04/05/03 16:05 0097 5.00 отделка

т.е в каждом столбце может и не быть значения


 
Andriano   (2003-06-27 12:07) [4]

Такой формат конечно можно. Это третий тип (см. Anatoly Podgoretsky ©). Можешь сам посчитать символы, где есть "5" и где нету - одинаково. Остается только определить сколько символов на услугу, здесь это не видно. Чего тут спрашивать? Берешь и делаешь.




 
Anatoly Podgoretsky   (2003-06-27 12:16) [5]

А это определять не надо, все до конца. Дополнительно первые три строки игнорировать, но использовать для проверки правильности файла, соответствия.
Можно бы было точнее сказать о формате, если бы не поленился поставить аттрибут КОД, а так не совсем полная ясность.


 
LordOfSilence   (2003-06-27 14:49) [6]

Тексейра и Пачеко, Delphi5, том 2, стр.583-586
"Таблицы в текстовом формате"
Может быть и поможет. :-)


 
Serginio   (2003-06-27 15:05) [7]

А самому пропарсить текстовый файл по конкретным критериям и записать в базу нет возможности.
2(LordOfSilence © (27.06.03 14:49)) привет.
Для того, что бы использовать текстовый драйвер нужен файл описания формата записей (Anatoly Podgoretsky © (27.06.03 09:32)). Легче самому пропарсить.


 
Anatoly Podgoretsky   (2003-06-27 15:11) [8]

Если длины четко фиксированные, а это из неверного формата в сообшениие не совсем ясно, то и парсить ничего не надо, серия вызовов Copy в переменные или в свойства и команда добавления в базу.

Импорт/Экспорт текстовых ланных это очень простая задача.


 
Serginio   (2003-06-27 15:16) [9]

2(Anatoly Podgoretsky © (27.06.03 15:11))
Под парсингом я понимаю любой разбор ручками, а не встроенными методами. Задачка то простенькая.



 
LordOfSilence   (2003-06-27 15:36) [10]

2 Serginio
Привет. Ну если фактический формат(ы) файла(ов) ему известен, то и действительно, почему бы не создать себе файл(ы) хахаха.sch?
Хотя я не стану утверждать, что это - единственный путь. :-)
Можно и пальчиками пропарсить. В любом случае почитать инфу ему не помешает, а там и сам выберет, что ему надо.
2 Anatoly Podgoretsky.
Судя по всему - все-таки фиксированный :-)


 
Anatoly Podgoretsky   (2003-06-27 15:44) [11]

Цифра 5 в приведем тексте плавает, но это его вина, если он неправильные данные представил или не в том формате


 
LordOfSilence   (2003-06-27 15:47) [12]

Зуб даю - фиксированный! :-))))))


 
Serginio   (2003-06-27 15:51) [13]

2(LordOfSilence © (27.06.03 15:47))
Я бы не стал так легко разбрасываться зубами, помятуя о том, что некоторые чудо программисты выгружая данные способны на все.
Этому есть огромное количество примеров.


 
boka   (2003-06-28 07:53) [14]

В даном файле длины не фиксированные.


 
Serginio   (2003-06-30 15:15) [15]

Значит разделитель пробел. Легче самому пропарсить и не мучиться


 
Buka   (2003-06-30 19:27) [16]

Вопрос к Соловьеву! Если можно хотя самый простой исходник для переброски текста из Exel в НД.
И вообще народ! Помогите! Я уже затрахался. Создаю с помощью Database Desk набор данных (пытаюсь создать). Но когда пытаюсь перенести туда текст, то черти что, греческие иероглифы пишет.Что я уже только не делал и Languige выбирал всякий (ANSI, PDox 866) ни хрена не получается. (Ума не хватает). прощу помощи.


 
Serginio   (2003-06-30 19:55) [17]

Из Ёкселя ты можешь выгрузить в ДБФ формате. Только учти, что выгружать будет только PDox 866 или DBase 866 кодовой странице


 
Anatoly Podgoretsky   (2003-06-30 20:06) [18]

Serginio (30.06.03 19:55)
В OEM кодировке, а это совсем не обязательно 866


 
Serginio   (2003-06-30 20:19) [19]

Anatoly Podgoretsky © (30.06.03 20:06)
Я имел ввиду каким языковым драйвером пользоваться для чтения файла.


 
Anatoly Podgoretsky   (2003-06-30 20:49) [20]

Мне кажется если использовать экспорт из Экселя то никакой языковый драйвер из БДЕ не используется, если его запросы (Query), то не знаю, не использовал, мне нужен был только импорт/экспорт.


 
Serginio   (2003-06-30 20:59) [21]

В Ёкселе сохранить как (DBaseIV) и ниже сохраняет таблицы в досовской кодировке. Никогда не использовал ODBC. И вообще стараюсь без него обходится. При появлении оного слишком много людей возомнило себя программистами. Ручками и только ручками. Иначе не останется программистов. Не известно куда технологии заведут.


 
Anatoly Podgoretsky   (2003-06-30 21:18) [22]

Serginio (30.06.03 20:59)
Именно в таком режиме иногда и использую, и здесь главный пункт в ДОСовской кодировке.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2003.07.24;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.49 MB
Время: 0.013 c
1-77869
ly
2003-07-11 17:43
2003.07.24
exel2000 и delphi


3-77754
Olivka
2003-06-29 16:11
2003.07.24
Использование макросов в FIBPlus


1-77984
MaXie
2003-07-11 12:44
2003.07.24
Как определить событие OnChange?


1-77979
Keith Flint
2003-07-11 11:20
2003.07.24
TListView


4-78197
VVA
2003-05-21 17:19
2003.07.24
Что делать с типами?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский