Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате
Форум программистов > Java: Общие вопросы > .Doc в String или Vector?


Автор: dajver 25.4.2007, 22:29
Итак, есть файл http://slil.ru/24291045, в нем одно из заданий будущего теста (заданий планируется больше).
Хотелось бы перенести из него информацию в Java таким образом: первый, второй, третий и четвертый массивы(String или Vector - не знаю)
 содержат варианты ответа, пятый - само задание.

Не подскажете, как это сделать?

Автор: RebornCrusader 26.4.2007, 03:29
String[] или Vector<String> (а лучше наверное ArrayList<String>) - зависит от того, как ты будешь работать с вопросами. По идее, этот массив/список будет заполняться единожды, и если длина его (число вопросов) заранее известна, String[] будет вполне достаточно. С другой стороны списки слишком удобная вещь, чтобы от них отказываться (а минусов для данной задачи я не вижу).

Кстати, как ты собираешься разбирать входной файл с заданиями? Почему выбран такой странный (неподходящий) формат хранения? Есть кончено неплохие API для работы с документами MS Word, но читать всё же имхо не очень удобно - могут возникныть проблемы со структурированием, двусмысленностью. С формулами вообще непонятно как работать. Лучше давать из в виде картинок. 
На мой взгляд, здесь будет проще использовать текстовый файл (.properties, класс ResourceBundle), форматирование реализовывать в виде html:
Код

task1.question=<html>Есть ли жизнь на <b>Марсе</b>?</html>
task1.anwer1=Есть
task1.anwer2=Нет
task1.anwer3=<html><em>Есть ли жизнь на Марсе, нет ли жизни на Марсе, науке неизвестно. Наука пока не в курсе дела!</em></html>
task1.anwer4=<html>Есть, вот фото: <img src="file:life.jpg"/></html>
task1.anwer5=<html>Уже нет, вот фото: <img src="file:trampled_life.jpg"/></html>

...


Вывод можно организовать, http://java.sun.com/docs/books/tutorial/uiswing/components/text.html.
Вопрос и каждый ответ в отдельную JTextPane (так и выбор ответа проще отслеживать, клик по компоненту и всё).

Автор: $tatic 26.4.2007, 09:42
Я для тестов использовал сторонний xml-сериализатор XStream, причем xml хранил в базе. Возможно это и глупо, но более-менее удобноsmile

Добавлено через 3 минуты и 24 секунды
Я для тестов использовал сторонний xml-сериализатор XStream, причем xml хранил в базе. Возможно это и глупо, но более-менее удобноsmile

Добавлено через 3 минуты и 24 секунды
Я для тестов использовал сторонний xml-сериализатор XStream, причем xml хранил в базе. Возможно это и глупо, но более-менее удобноsmile

Автор: RebornCrusader 26.4.2007, 09:48
Цитата($tatic @  26.4.2007,  17:42 Найти цитируемый пост)
Я для тестов использовал сторонний xml-сериализатор XStream, причем xml хранил в базе. Возможно это и глупо, но более-менее удобно

Я тоже предпочитаю XML где только можно, но в случае с использованием HTML-форматирования могут быть проблемы при разборе, либо символы типа "<" в HTML-коде заменять на &lt; и т. д. В результате - сложнее ручное редактирование. Хотя можно написать простую утилитку на эту тему... ;)

Powered by Invision Power Board (http://www.invisionboard.com)
© Invision Power Services (http://www.invisionpower.com)