![]() |
|
Модераторы: Poseidon, Snowy, bems, MetalFan |
![]()
|
|
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
Парни нужна ваша помощь. Негоже программисту вносить информацию в программу руками помогите побобную информацию програмно "запихнуть", спросите куда запихнуть? Хоть в *.db, *.dbf, TStringGrid, Excel, в любую "структурированную систему" фалы прилагаются Присоединённый файл ( Кол-во скачиваний: 10 )
info.zip |
|||
|
||||
| p0s0l |
|
|||
![]() Г-н Посол ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3668 Регистрация: 13.7.2003 Где: 58°38' с.ш. 4 9°41' в.д. Репутация: 58 Всего: 112 |
А что сложного ? Читай построчно файл, и разбивай строки на поля...
Но так уж и быть
-------------------- С уважением, г-н Посол. |
|||
|
||||
| imageman |
|
|||
![]() Шустрый ![]() Профиль Группа: Участник Сообщений: 66 Регистрация: 30.9.2004 Репутация: 1 Всего: 1 |
а может Excel может сделать db?
Я пару раз пользовался - на входе Excel текстовый файл (разграничители хоть пробелы, хоть табуляторы, хоть запятые - не важно), а на выходе делал .dbf. Но это подходит для "разовой" работы. |
|||
|
||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
я специально присоединил файлы, ты пробовал их прочитать? Добавлено @ 08:53 нельзя ли небольшие коментарии что есть #$B3, как ты узнаешь? Widths - для чего эта переменная Это сообщение отредактировал(а) dsergey - 23.10.2004, 10:50 |
|||
|
||||
| p0s0l |
|
|||
![]() Г-н Посол ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3668 Регистрация: 13.7.2003 Где: 58°38' с.ш. 4 9°41' в.д. Репутация: 58 Всего: 112 |
$B3 - код символа "│" - разделителя столбцов в шапке таблицы
$CD - код символа "═" - верхняя часть таблицы, для определния начала шапки Widths - хранит ширину столбцов в символах - т.е. это расстояния между двумя соседними символами "│"... Например, для kvp22.txt: Widths[0] = 4 // комнат Widths[1] = 5 // схемкомн Widths[2] = 12 // район и т.д. -------------------- С уважением, г-н Посол. |
|||
|
||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
|
|||
|
||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
p0s0l, ты извини за наглость, но последнюю строчку не читает
вообще процедура шикарная, все отправляю в StringGrid, удаляю, ненужные столбцы, отправляю в RichEdit на печать Это сообщение отредактировал(а) dsergey - 25.10.2004, 09:39 |
|||
|
||||
| p0s0l |
|
|||
![]() Г-н Посол ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3668 Регистрация: 13.7.2003 Где: 58°38' с.ш. 4 9°41' в.д. Репутация: 58 Всего: 112 |
dsergey, пришли или прицепи файл, в котором не читается последняя строчка (файлы, которые были в архиве info.zip - в них всё читается...)
PS: строчку StringGrid1.RowCount := n+1; Помести после if (s = '') or (s2 = '') then break; А то получается одна лишняя пустая строка в StringGrid'е... Полагаю, проблема в строке: if (s = '') or (s2 = '') then break; Если файл всегда кончается тремя странными символами, тогда можно (лучше) сделать вместо этой строки так (попробуй): if (s = #$1B#$46#$0C) then Break; -------------------- С уважением, г-н Посол. |
|||
|
||||
| Akella |
|
|||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
извини, все в порядке, это моя ошибка
это действительно так --------------- и спасибо эту форуму, за помощь "сижу" на форуме с 2001 и не раз убеждался в этом, да и сам помогал. Это сообщение отредактировал(а) dsergey - 26.10.2004, 11:45 |
|||
|
||||
| Akella |
|
||||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
перед этим пришлось добавить
ширина поля "заявитель" в заголовке 10, а реально ширина поля больше раза в два. Это сообщение отредактировал(а) dsergey - 26.10.2004, 16:11 |
||||
|
|||||
| p0s0l |
|
|||
![]() Г-н Посол ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3668 Регистрация: 13.7.2003 Где: 58°38' с.ш. 4 9°41' в.д. Репутация: 58 Всего: 112 |
Да, точно. Я вначале ориентировался (тестил) по файлу domd22, а там после "заявителя" наставлены пробелы до конца столбца. А в kvp*.txt пробелов таких нет - и так сразу не обратишь на это внимание...
Поэтому лучше (для универсальности) сделать так:
-------------------- С уважением, г-н Посол. |
|||
|
||||
| Akella |
|
||||||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
эта строка лишняя
ничего не загружается а что остальные строки дают, я не понял, никаких изменений, я пока не заметил, буду разбираться, огромное тебе спасибо еще раз Добавлено @ 09:43 в этом участке
тоже ошибка
|
||||||
|
|||||||
| p0s0l |
|
||||||||
![]() Г-н Посол ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3668 Регистрация: 13.7.2003 Где: 58°38' с.ш. 4 9°41' в.д. Репутация: 58 Всего: 112 |
[quite]ничего не загружается[/quote]Да ну ?
Больше никаких изменений...
Не вижу причин для неработания... А в твоём случае не должно правильно работать, т.к. ты устанавливаешь RowCount = n, а дальше в тексте (если не менял ничего) идёт обращение к n-ому ряду, а такого не существует (т.к. нумерация рядов идёт с нуля). Надо делать RowCount := n+1; И как ты открываешь несколько файлов в одну сетку, если у них разные названия и ширины столбцов ? -------------------- С уважением, г-н Посол. |
||||||||
|
|||||||||
| Akella |
|
||||||
![]() Творец ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 18485 Регистрация: 14.5.2003 Где: Корусант Репутация: 36 Всего: 329 |
названия и ширины столбцов одинаковые (есть 2 типа фалов, а именно дома и квартиры)
тем не менее это факт, но не помню менял ли что дальше или нет вот тебе весь код на текщий момент
|
||||||
|
|||||||
| p0s0l |
|
||||
![]() Г-н Посол ![]() ![]() ![]() ![]() Профиль Группа: Экс. модератор Сообщений: 3668 Регистрация: 13.7.2003 Где: 58°38' с.ш. 4 9°41' в.д. Репутация: 58 Всего: 112 |
for i := 1 to Length(s) do if s[i] < #32 then s[i] := ' '; (ну забыл я поставить восклицания
-------------------- С уважением, г-н Посол. |
||||
|
|||||
![]()
|
| Правила форума "Delphi: Общие вопросы" | |
|
|
Запрещается! 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами
Если Вам понравилась атмосфера форума, заходите к нам чаще! С уважением, Snowy, MetalFan, bems, Poseidon, Rrader. |
| 0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей) | |
| 0 Пользователей: | |
| « Предыдущая тема | Delphi: Общие вопросы | Следующая тема » |
|
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |