![]() |
| ||
|
|
Новости |
Поиск |
FAQ |
Статьи |
Книги |
Новости VCL
| | Форумы ЧАТ |
Орешник |
|
| |||
| |||
« предыдущая ветвь | форум | следующая ветвь »
подойдет ли TStringList?
Delphist2 © (2010-05-27 11:54:00)Есть задача хранить список строк, кот. загружаются в визуальный контрол из файла при загрузке программы. Пользователь может добавлять, изменять и удалять строки. Изменения отображаются и в файле. Количество строк измеряется тысячами. Вопрос: в случае, если удалилась допустим предпоследняя строка, метод TStringList.savetofile перезапишет весь файл или же только пару последних строк?
Anatoly Podgoretsky (2010-06-01 12:46:00) [1]без всякого гугла.
Плохиш (2010-06-01 10:55:00) [2]
> будете учить? или в гугл отошлете?
Обычно, после пятого поста можно просто посылать...
brother (2010-06-01 05:03:00) [3]> Так они же не дураки, а начинающие
судя по [7], мат часть хромает, будете учить? или в гугл отошлете?
Anatoly Podgoretsky (2010-05-28 09:05:00) [4]> brother (28.05.2010 04:39:22) [22]
Так они же не дураки, а начинающие
brother (2010-05-28 04:39:00) [5]> профессиональное решение
в начинающих?
Anatoly Podgoretsky (2010-05-27 16:02:00) [6]> brother (27.05.2010 12:29:17) [17]
Я предлагаю профессиональное решение.
Демо (2010-05-27 13:57:00) [7]А для отображения информации и редактирования можно использовать DrawGrid, например.
Демо (2010-05-27 13:35:00) [8]
> Delphist2 (27.05.10 11:54)
> Есть задача хранить список строк, кот. загружаются в визуальный
> контрол из файла при загрузке программы. Пользователь может
> добавлять, изменять и удалять строки. Изменения отображаются
> и в файле. Количество строк измеряется тысячами. Вопрос:
> в случае, если удалилась допустим предпоследняя строка,
> метод TStringList.savetofile перезапишет весь файл или
> же только пару последних строк?
1. Файл читается и записывется только полностью.
Подойдёт или не подойдёт TStringList - решать тебе.
Для этого ответь себе на вопросы:
- приемлемо ли время чтения/записи файла?
- как часто происходит запись?
- приемлемо ли время вставки/обновления/удаления записей из TStringList и как часто это происходит?
Ответив на эти вопросы сам поймёшь - устраивает тебя эта технология или нет.
brother (2010-05-27 12:34:00) [9]имхо в начинающих проктологией и оптимизацией кода лучше не заниматься...
brother (2010-05-27 12:29:00) [10]можно, но не нужно - это уже другое)
зы Дядя Толя, как всегда в своем стиле)))))
Delphist2 (2010-05-27 12:28:00) [11]Какое решение тогда лучше? Не БД же создавать с ед. таблицей и ед. полем. А весь файл перезаписывать долго.
Медвежонок Пятачок (2010-05-27 12:28:00) [12]А весь файл перезаписывать долго.
Сравни время сохранения стринглиста с тысячей строк со временем манипуляций юзера с этим списком строк.
например добавление пары строк и удаление одной.
а так же с частотой этих манипуляций в день.
Anatoly Podgoretsky (2010-05-27 12:28:00) [13]> brother (27.05.2010 12:25:13) [13]
Можно написать overloaded версию
brother (2010-05-27 12:25:00) [14]на [7]
вегда будет перезаписывать...
Медвежонок Пятачок (2010-05-27 12:24:00) [15]тебе какая разница?
весь или не весь.
brother (2010-05-27 12:24:00) [16]1. [4]
2. [1]
Delphist2 (2010-05-27 12:22:00) [17]О том, будет ли перезаписываться весь файл или же часть файла
brother (2010-05-27 12:21:00) [18]> А TStream в этом смысле более оптимизирован?
ты о чем? О_о
Anatoly Podgoretsky (2010-05-27 12:20:00) [19]Мне кажется, что и TStringList лишний, при наличии визуально компонента.
Delphist2 (2010-05-27 12:18:00) [20]brother
А TStream в этом смысле более оптимизирован?