Цитата:
Сообщение от namespaces
Да я подумал лучше хранить в XML и разбить вопросы по категориям, чтобы при дальнейшем на загружать все вопросы пачками. Только при выборе категории загружать все его вопросы, и освобождать память после перехода на другой и т.д.
|
У Вас хотя бы 10 000 вопросов есть? Если нет, то при современном интернтете и объемах памяти даже не заморачивайтесь - грузите сразу и не выгружайте.
Однако если если есть картинки - можно сделать ссылки в xml - и грузить только при отображении вопроса, или блока вопросов.
Цитата:
Можно поподробнее, что вы имеете ввиду насчет Excel, и как будут потом импортироваться данные из Excel?
|
Это актуально только если ответственный за набор вопросов человек не хочет писать в xml. Иначе, спокойно получаем от него xml-ку и не создаём себе геморроя.
Если человек хочет Excel:
Самый тупой способ - это взять, экспортнуть таблицу с вопросами в coma-separated или tab-separated текст. Впринципе, разделённый табами текст и просто при вставке ячеек в блокнот получается.
Сохранить его в txt формате. А дальше читать прямо в as3 и парсить через split("\n")/split("\t")
Проблемы будут с переносами строк. С tab-separated-текстом я не знаю что делать - только заменять переносы на ^ в Excel.
Второй недостаток - надо копипастить или экспортировать вручную (выбирая в какое место сохранить txt-файл), а не просто нажать ctl-s и запустить генератор, кликнув по ярлыку батника в панели быстрого запуска или набрав комманду в постоянно висящей консоли.
Второй способ - генерация xml скриптом по содержимому ячеек, встроенным в Excel (VisualBasic)
Можно завернуть содержимое ячейки в <![CDATA[ ]]>, тогда переносы сохранятся.
Оооочень медленно. У нас справочник из 20 листов с от силы 100-ю записями на лист конвертился 10 минут(!)
Просто медленный доступ к ячейке.
Третий способ - конвертация с C# и библиотекой EPPlus.dll и ExcelLibrary.dll (ни через какие OLE и com'ы - иначе те же тормоза). Читает формат напрямую. Тот же справочник конвертился не за 10 минут а за 4 секунды. Поразбираться, конечно придётся, но это не сложнее, чем разобраться с VisualBasic.
Я не советую прямо всё бросать и писать генератор - лучшая работа та, которую не надо делать. Просто обрисовал расклад.