Форум: "Основная";
Текущий архив: 2004.05.02;
Скачать: [xml.tar.bz2];
ВнизРабота со строками Найти похожие ветки
← →
Tornado © (2004-04-13 10:41) [0]Подскажите плиз как можно осуществить следующую задачу: имеется текстовой файл такого содержания (часть файла, на самом деле список большой):
Mailbox Name Locn Last Checked In Login Comments
---------------------------------------------------------------
01101-n.novgorod P 18.03.04 13:50 ln ПО Ларина nov-01-vtg-diagnost-ne L 18.03.04 8:04 ln Лаборатория krasov диагностики, Некрасов nov-01-vtg-diagnost-sh L 18.03.04 7:59 ln Нач.
ishko лаборатории диагностики, Шишко
Т.е. если длинный адрес то он переносится на след. строку, тоже самое с полем Comments. А мне нужно поместить в таблицу эти данные, т.е. в поле adres наименование адреса, в поле Locn букву которая после адреса (L или P) и так далее. Проблем бы не было если бы все писалось в строку...а как тут быть даже и не знаю, может есть способ?
← →
Tornado © (2004-04-13 10:44) [1]блин все растянулось неправильно :(((
вот так должно быть примерно:
Mailbox Name Locn Last Checked In Login Comments
-----------------------------------------------------
какой-то L 18.03.04 13.50 In Лаборатория
Adress диагностики
← →
TButton © (2004-04-13 10:46) [2]use the CODE
← →
piople © (2004-04-13 10:46) [3]Пользуйся базой данных или в крайнем случае инициализационные файлы.
← →
Tornado © (2004-04-13 10:47) [4]>>> piople © (13.04.04 10:46) [3]
это лог-файл, мне его и нужно забить в базу
← →
TButton © (2004-04-13 10:47) [5]ну. WordWrap - false
отключи перенос по словам в блокноте.
← →
piople © (2004-04-13 10:49) [6]Удалено модератором
Примечание: 7 дней RO за мат
← →
Tornado © (2004-04-13 10:53) [7]>>>
piople © (13.04.04 10:49) [6]
да блин (не буду матом :) есть такой вот лог, который создает левая прога, мне его надо обработать вышеописанным образом
← →
Tornado © (2004-04-13 10:54) [8]>>> TButton © (13.04.04 10:47) [5]
попробую пасиб
← →
Anatoly Podgoretsky © (2004-04-13 10:56) [9]Это эниксовсовский формат, разделение строк символом LF
Загони в TStringList
← →
Семен Сорокин © (2004-04-13 10:57) [10]2Tornado
считывай посточно, раскидывай по полям, ориентируйся на позицию символа, дополняй в случае незаверншенности следующей строкой - все должно быть достаточно прозрачно.
← →
Jack128 © (2004-04-13 11:02) [11]
> Tornado ©
А какое отношение WordWrap имеет к содержимому текстового файла? Или ты думаешь, что отмена WordWrap"a удалит из твоего файла лишнии #13#10? Или все таки изначально формулировка
> Т.е. если длинный адрес то он переносится на след. строку
была несколько неправильной? ;-)
← →
Tornado © (2004-04-13 11:13) [12]>>> Jack128 © (13.04.04 11:02) [11]
WordWrap конечно тут не причем :) думаю нужно идти по пути предложенному Anatoly Podgoretsky © (13.04.04 10:56) [9]...формулировка правильная
← →
Tornado © (2004-04-13 11:13) [13]>>> Jack128 © (13.04.04 11:02) [11]
WordWrap конечно тут не причем :) думаю нужно идти по пути предложенному Anatoly Podgoretsky © (13.04.04 10:56) [9]...формулировка правильная
← →
han_malign © (2004-04-13 11:29) [14]У тебя есть обязательные поля (Locn, Last Checked In), по ним ты можешь определить первая это строка или строка с продолжением разбитых имен.
Формат табличный, и для каждой разбитой на несколько строк ячейки, ты должен выделид подстроку этой ячейки и добывить к предыдущей. При на хождении следущей строки с заполнеными обязательными полями(или окончанию файла), считаешь что накопление данных по ячейкам предыдущей записи закончено, и отправляешь в базу.
Формат тапблицы абсолютно прозрачен, полей мало, тебе нужно всего две буферных строки для накопления полей Mailbox Name, Login Comments (ну и еще две для хранения Locn, Last Checked In)...
← →
han_malign © (2004-04-13 11:30) [15]Ух, сколько помарок, мой личный рекорд пожалуй...
← →
Tornado © (2004-04-13 11:50) [16]>> han_malign © (13.04.04 11:29) [14]
эх примерчик бы махонький :)
← →
Anatoly Podgoretsky © (2004-04-13 11:54) [17]Tornado © (13.04.04 11:13) [13]
Если не веришь, то открой лог каким либо шестнадцатиричным редактором и посмотри.
← →
panov © (2004-04-13 11:58) [18]Т.е. если длинный адрес то он переносится на след. строку,
т.е. файл содержит2 строки вместо одной? Ты в этом точно уверен?
Если да, то как определил?
← →
Tornado © (2004-04-13 12:02) [19]>>> Anatoly Podgoretsky © (13.04.04 11:54) [17]
ну почему же не верю? ояень даже верю и теперь думаю как это реализвать, какие функции использовать...
>>> panov © (13.04.04 11:58) [18]
Точно, это же обычный лог, в него эта левая супер-программа пишет данные именно в таком виде, как будто есть невидимая таблица и длины строк не хватает для длинных адресов или кмментариев, она и переносит их на следущую строку...Это видно в обычном блокноте
← →
panov © (2004-04-13 12:04) [20]>Tornado © (13.04.04 12:02) [19]
Это видно в обычном блокноте
А это как раз и не есть правильно.
Я вот не уверен, что у тебя строка переносится...
Смотри содержимое в FAR, например, отключив перенос длинных строк, в HEX виде, в конце-кончов...
Страницы: 1 вся ветка
Форум: "Основная";
Текущий архив: 2004.05.02;
Скачать: [xml.tar.bz2];
Память: 0.49 MB
Время: 0.037 c