#ruby-on-rails #xmi
#ruby-on-rails #xmi
Вопрос:
У меня есть несколько моделей, сохраненных в формате xmi. И мне нужно прочитать их из какого-либо приложения в rails. Мне не нужно создавать модель из файла xmi, мне просто нужно прочитать некоторые значения, которые есть в файле xmi. Есть идеи?
Заранее спасибо!
Комментарии:
1. файлы xmi можно анализировать в анализаторе xml, потому что он должен быть совместимым с xml, по какой-либо причине, почему бы просто не использовать для этого анализатор xml?
2. Ну, первоначальная идея состоит в том, чтобы найти анализатор для чтения файла xmi из rails. Я думаю, файл xmi можно было бы проанализировать с помощью синтаксического анализатора xml, и тогда его было бы легче прочитать. Я прав?
3. AFAIK, для Ruby нет встроенного анализатора xmi. Итак, анализатор xml — это в значительной степени следующая лучшая вещь, ответа davidb должно быть достаточно для вас (для чего-то более сложного вы можете использовать nokogiri gem). Кстати, синтаксический анализ xml не зависит от Rails, в вашем случае он специфичен для Ruby.
Ответ №1:
Прочитайте содержимое файла и проанализируйте его по хэшу:
fh=File.open("filename.xml", "r")
data=Hash.from_xml(fh.read)
Это всего лишь пример. Все, что вам нужно, это xml в виде строки, а затем вы можете использовать Hash.from_xml для его анализа и работы с ним как с хэшем.