![]() |
|
Модераторы: Snowy, MetalFan, bems, Poseidon |
![]()
|
|
| kaktus90 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 26.10.2007 Репутация: нет Всего: нет |
Пишу программу для учёбы. Необходимо хранить задания и ответы к ним. Т.е. пользователю даётся вариант задания, после его выполнения, результаты сверяются прогой с забитыми ответами.
Как лучше всего организовать хранение этой информации? |
|||
|
||||
| Rennigth |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1708 Регистрация: 21.6.2004 Где: Moscow Репутация: 15 Всего: 76 |
kaktus90, какая нить локальная база данных
-------------------- (* Honesta mors turpi vita potior *) |
|||
|
||||
| EvilsInterrupt |
|
|||
|
Executables research ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 14.7.2007 Где: Железнодорожный, МО, Россия Репутация: нет Всего: 9 |
kaktus90, XML-файл продумай, это легко! И XML Data Binding самое лучшее решение
|
|||
|
||||
| Rennigth |
|
|||
![]() Эксперт ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1708 Регистрация: 21.6.2004 Где: Moscow Репутация: 15 Всего: 76 |
Можно и так, только зашифровать хорошенько придеться. -------------------- (* Honesta mors turpi vita potior *) |
|||
|
||||
| EvilsInterrupt |
|
|||
|
Executables research ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 14.7.2007 Где: Железнодорожный, МО, Россия Репутация: нет Всего: 9 |
kaktus90, А может ты не будешь мучаться а заюзаешь FireBird Embedded ?
Забыл сказать, я щас аналогичную программу пишу, если интересно присоединяйся ;) Это сообщение отредактировал(а) EvilsInterrupt - 26.10.2007, 18:04 |
|||
|
||||
| skyboy |
|
|||
|
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: нет Всего: 260 |
SQLite
Firebird Embedded VolgaDB AbsoluteDB Как ни странно, локальных баз немало. И уж тем более "нестранно", что в разделе "общие вопросы по базам данных" есть закрепленная тема "Какую базу данных выбрать?", где выбор СУБД(в т.ч. и локальной) довольно подробно рассмтроены. |
|||
|
||||
| kaktus90 |
|
|||
|
Новичок Профиль Группа: Участник Сообщений: 2 Регистрация: 26.10.2007 Репутация: нет Всего: нет |
Поясню. В каком виде хранить задания, которых будет примерно 100 и соответственно столько же ответов? Если в обычных файлах, то более-менее грамотный пользователь их может просмотреть и тогда все станут отличниками. А в саму прогу вбить проблематично - объём большой. В БД хранить тоже вряд ли получиться, потому что сами задания представлены строками по штук 15 и ответы также, но более менее формализованы. Что делать?
|
|||
|
||||
| Alexeis |
|
|||
![]() Амеба Профиль Группа: Админ Сообщений: 11743 Регистрация: 12.10.2005 Где: Зеленоград Репутация: 34 Всего: 459 |
Можно добавить их в ResourceString. Т.е. в раздел строковых ресурсов. Для этого можно либо сделать либо отдельный модуль, либо добавить в один из текущих модулей. Так они всегда будут на виду и легко редактироваться. Но вот только умный студент все равно сможет их найти каким-нибудь ResHackerom, также как если их вбивать в код. Можно попросту строки сжать zLib ом сохранить на диск, потом заганать в ресурс. в проге загрузить ресурс и распаковать и загрузить в StringList. -------------------- Vit вечная память. Обсуждение действий администрации форума производятся только в этом форуме гениальность идеи состоит в том, что ее невозможно придумать |
|||
|
||||
| Still |
|
|||
|
PHP-программист ![]() Профиль Группа: Участник Сообщений: 87 Регистрация: 27.5.2007 Репутация: нет Всего: нет |
Как вариант всю информацию хранить в файлах в закодированном виде, а при проверке в программе, раскодировать и сравнивать.
Это для примера. Вот в таком подобном кодированном виде можно хранить данные в файлах.[code=nocolor] |
|||
|
||||
| VICTAR |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1108 Регистрация: 6.10.2006 Репутация: 10 Всего: 80 |
Я тут вспомнил, есть компонент TDataFile, работает по принципу TIniFile, только информация храниться в зашифрованном виде. Если учесть, что вопросов будет всего 100, то думаю, это неплохой вариант.
|
|||
|
||||
| EvilsInterrupt |
|
|||
|
Executables research ![]() ![]() ![]() Профиль Группа: Завсегдатай Сообщений: 1019 Регистрация: 14.7.2007 Где: Железнодорожный, МО, Россия Репутация: нет Всего: 9 |
Зашифровать то не сложно! Мало того что существует немерено компонентов, классов, так и самому простенкое шифрование замудрить не сложно, вот пример:
Шифрование: Код символа + Ключ шифрования размером в байт = зашифрованный код символа Дешифрование: зашифрованный код символа - Ключ шифрования размером в байт = Код символа логично положить что это все сложение и вычитание по модули 2^8 , ну а ключ шифрования размером в байт можно любое числов взять. Но я бы просто взял и заюзал FireBird Embedded, т.к. работает шустро, ну и со строками работать тоже просто. Можно еще интересней поступить, взять XML Data BInding и с нечасто используемой кодировкой там хранить, догадался студент - ну и флаг ему в руки, респект и уважуха! ;) Можно загнать XML-файл в какой нить модуль u_QuestionsAndReplay а внем в виде строки Xml файл и работать с этим хозяйством в памяти используя TjanXMLParser2 Это сообщение отредактировал(а) EvilsInterrupt - 27.10.2007, 16:13 |
|||
|
||||
| VICTAR |
|
|||
|
Эксперт ![]() ![]() ![]() Профиль Группа: Участник Сообщений: 1108 Регистрация: 6.10.2006 Репутация: 10 Всего: 80 |
||||
|
||||
![]()
|
| Правила форума "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. |