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

Вниз

Класс для работы с файлом собственной структуры   Найти похожие ветки 

 
MrTime ©   (2005-08-26 15:19) [0]

Доброго времени суток....
Вопрос состоит вот в чём: мне необходимо создать модуль для работы с файлом, который должен содержать в себе настройки программы (как системный регистр ну или как настройки миранды); а также информацию, организованою в виде записей (для простоты возьмём такую запись:
 TPeople=record
   Name: String[20];
   Age:  Integer;
 end;)
Необходимо защищать файл паролем (пароль в настройках), производить поиск и выборку из файла информации, добавление/удаление информации без нарушения структуры файла.
Если кто-то делал подобное прошу скинуть на мыло исходники. Или пишите у кого есть какие идеи по организации такого класса.


 
Digitman ©   (2005-08-26 15:23) [1]

а нужен ли очередной велосипед ?

чем не устраивают готовые СУБД ?

ведь твои требования


> производить поиск и выборку из файла информации, добавление/удаление
> информации без нарушения структуры


- это "родные" требования, предъявляемые практически к любой СУБД, коих готовых, легко реализующих эти требования, существует несметное количество !


 
MrTime ©   (2005-08-26 15:44) [2]

БД немогу использовать....
У меня задача запихнуть всё это в собственный файл!
К тому же БД навешивают уйму ненужного, а у меня ограничения по ресурсам!
Хотя ты прав - это изобретения велосипеда... Если есть исходники сомопальной БД подкинь мне....


 
MrTime ©   (2005-08-26 15:50) [3]

В качестве варианта подойдёт модуль для разборки XML файлов... За линки буду благодарен....


 
Digitman ©   (2005-08-26 15:51) [4]


> БД немогу использовать


почему ?
чем, скажем, FB/YA Embedded не подходит ?


> задача запихнуть всё это в собственный файл


он, файл, и так будет твоим "собственным".. просто ты переложишь львиную долю рутинной работы по созданию этого файла и манипуляциям с ним на плечи ядра СУБД .. там уже ВСЕ сделано и поиск, и выборка, вставка, и модификация, и удаление ..


> БД навешивают уйму ненужного


Дополнительная DLL размером в 500..600 кб по сегодняшним меркам - смешные требования к ресурсам ..


> Если есть исходники сомопальной БД


они - прямо перед тобой, это исходники станд.класса TClientDataset


 
Digitman ©   (2005-08-26 15:56) [5]


> В качестве варианта подойдёт модуль для разборки XML файлов


импортируй библ-ку типов MSXMLDOM - получишь готовый pas-модуль для работы с xml-документами


 
MrTime ©   (2005-08-26 16:01) [6]

А вот мне низзя использовать БД!!!
Мог бы - юзал бы... :( А низзя и всё тут!!!

Представь себе на минуту - есть заказ с таким условием "БЕЗ СУБД"! И чё делать?! Глупую рожу - "А это не СУБД..." Или как?

Короче - я пошустрю по исходникам Миранды и её базы... Другого варианта не вижу. От модуля XML тоже не отказываюсь пока...


 
MrTime ©   (2005-08-26 16:04) [7]

//импортируй библ-ку типов MSXMLDOM - получишь готовый pas-модуль для работы с xml-документами

за это спс


 
Jeer ©   (2005-08-26 16:08) [8]

MrTime ©   (26.08.05 16:01) [6]

Используй файлы известных форматов, dbf например.
И компоненты доступа к ним - в сети есть.
Никто не упрекнет, что это известная СУБД, т.к. движок - твой.


 
Antonn ©   (2005-08-26 16:28) [9]

MrTime ©   (26.08.05 15:19)
TMemoryStream или TFileStream. Пример нужно?


 
Erik1 ©   (2005-08-26 16:47) [10]

Я бы взял dbf, поскольку компоненты полностью открыты, код интергируется в програму без всяких dll. Хотя TClientDataset тоже очень неплохой вариант. Есть очень простые компоненты, например много раз встречал TDataSetText. Работает с простым текстовым файлом как с базой и является наследником от TDataSet. Одним словом простор для выбора.


 
Digitman ©   (2005-08-26 16:49) [11]


> MrTime ©   (26.08.05 16:01) [6]


> есть заказ с таким условием "БЕЗ СУБД"


такой заказ ты никогда не выполнишь.
потому что то что ты пытаешься реализовать "с нуля" - это тоже будет СУБД.


> пошустрю по исходникам Миранды и её базы


и тоже обнаружишь там ничто иное как СУБД.

и движковые компоненты для доступа к локальным dbf-таблицам - это тоже СУБД.


 
wicked ©   (2005-08-26 23:10) [12]

вот СУБД без СУБД - http://www.sqlite.org/... как раз идеально подходит под описанное... сам не раз жалел, что вовремя ссылка и проект не подвернулись...
если нужен XML без msxml"а, то посоветую SimpleXML, живет здесь - http://mv.rb.ru/simplexml.htm


 
MrTime ©   (2005-08-27 22:25) [13]

Всем спс...
Wicked - тебе отдельное спс... Посмотрю что там можно наваять....

Тему можно считать закрытой... :)


 
Anatoly Podgoretsky ©   (2005-08-27 22:51) [14]

MrTime ©   (26.08.05 16:01) [6]
Темнишь ты парень, к тому же задача не выпонима.


 
MrTime ©   (2005-08-28 19:02) [15]

:0) Даже если темню то что?!
Я знаю что нуна мне и что я хочу узнать... А потом я напишу что из єтого выйдет... тебя уведомить?!


 
Anatoly Podgoretsky ©   (2005-08-28 20:42) [16]

MrTime ©   (28.08.05 19:02) [15]
Не утруждайся


 
sniknik ©   (2005-08-28 21:45) [17]

странный подход к форуму - сказать как можно меньше(исходных данных/о задаче), а лучше вообще соврать/извратить условие... и тем не менее получить ответ(/то что надо). при этом пользоваться сленгом который кроме автора никто не понимает, и коверкать слова, так что думать становится необходимо не над вопросом а над смыслом, а чего именно же сказано.

это, что спорт такой? или на спор делается?... не понимаю. и ведь этот не единственный. навалом таких. клуб у них чтоли. ;)



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

Форум: "Основная";
Текущий архив: 2005.09.18;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.01 c
1-1123776604
olevacho2
2005-08-11 20:10
2005.09.18
Отличие Delphi4 Standart от Delphi4 Professional


1-1125041794
ruslan_as
2005-08-26 11:36
2005.09.18
Afalina Soft XL Report 4 - "Ошибка сервера"


1-1125249838
heady
2005-08-28 21:23
2005.09.18
работать с Tmemo как с тесктовывм файлом


1-1125300062
Cherrex
2005-08-29 11:21
2005.09.18
Рамка ячейки EXCEL


4-1121708619
DenisWW
2005-07-18 21:43
2005.09.18
как добавить в контекстное меню рабочего стола(desktop) свой пунк





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский