Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > Общие вопросы Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 29.03.2014, 08:21   #11
DIgorevich
Погулять вышел
Участник клуба
 
Аватар для DIgorevich
 
Регистрация: 17.05.2010
Сообщений: 1,573
По умолчанию

Да, видимо, все-таки придется использовать БД, хоть и не хотелось изначально.
Никогда не знаешь, где тебе повезет... (Фрай)
DIgorevich вне форума Ответить с цитированием
Старый 29.03.2014, 09:37   #12
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Можно и XML или ClientDataSet использовать без СУБД.
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 29.03.2014, 09:48   #13
phomm
personality
Старожил
 
Аватар для phomm
 
Регистрация: 28.04.2009
Сообщений: 2,882
По умолчанию

Вот мой модуль из 3летней давности системы тестирования, отвечает за запись бинарного файла тестов (итоговый поток ещё шифруется) у которых сложная структура с вложенными структурами: тест содержит свои данные, в т.ч. строку описания, плюс набор вопросов, вопрос содержит данные, в т.ч. строку текста, плюс набор ответов, ответ содержит свои данные плюс строку ответа. Длина строки ограничена здравым смыслом - 65536 байт (но это можно легко увеличить), все строки пишутся таким образом:
Код:
w := length(mainsys.curtest.name) * SizeOf(Char); // var w: Word;
ms.Write(w, sizeof(w));
ms.Write(mainsys.curtest.name[1], w); // имя теста
Пишется 2байта для длины строки, и потом сами данные строки. Для учёта юникода (для дельфи 2009+) надо использовать умножение на SizeOf(Char) (но это универсальное средство, и для неюникода тоже работает адекватно)

Последний раз редактировалось phomm; 29.03.2014 в 09:50.
phomm вне форума Ответить с цитированием
Старый 29.03.2014, 11:35   #14
DIgorevich
Погулять вышел
Участник клуба
 
Аватар для DIgorevich
 
Регистрация: 17.05.2010
Сообщений: 1,573
По умолчанию

Цитата:
Сообщение от Аватар Посмотреть сообщение
Можно и XML или ClientDataSet использовать без СУБД.
Ага, именно на XML и остановился.
Никогда не знаешь, где тебе повезет... (Фрай)
DIgorevich вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
delphi, запись Pchar строки в файл rax9ray Помощь студентам 5 04.12.2011 16:30
запись в файл с новой строки rowlin Общие вопросы C/C++ 6 22.04.2011 00:30
Запись хвоста ком. строки в файл Lazio Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 2 27.03.2011 21:18
Запись строки в файл SL1CK Общие вопросы Delphi 3 07.01.2010 16:20