Преобразование необработанного файла (двоичные данные) в файл XML - PullRequest
1 голос
/ 06 января 2010

Я работаю над проектом, в рамках которого мне нужно взять необработанный файл с сервера и преобразовать его в файл XML.

Есть ли в java какой-либо инструмент, который может помочь мне выполнить эту задачу, например JAXP можно использовать для анализа XML-документа?

Ответы [ 4 ]

1 голос
/ 06 января 2010

JAXP также можно использовать для создания нового пустого документа:

    Document dom = DocumentBuilderFactory.newInstance()
                                         .newDocumentBuilder()
                                         .newDocument();

Затем вы можете использовать этот документ для создания элементов и добавлять их по мере необходимости:

    Element root = dom.createElement("root");
    dom.appendChild(root);

Но, как отметил Jørn в комментарии к вашему вопросу, все зависит от того, что вы хотите сделать с этим «необработанным» файлом: как его следует преобразовать в XML. И только ты это знаешь.

1 голос
/ 06 января 2010

Полагаю, вам понадобятся ваши объекты для последующего использования, поэтому создайте MyObject, который будет неким компонентом, который вы загрузите значения из вашего Raw File, и вы можете записать это в someFile.xml

FileOutputStream os = new FileOutputStream("someFile.xml");
XMLEncoder encoder = new XMLEncoder(os);
MyObject p = new MyObject();
p.setFirstName("Mite");
encoder.writeObject(p);
encoder.close();

Или вы можете использовать TransformerFactory, если вам не нужны объекты для последующего использования.

1 голос
/ 06 января 2010

Да. Это предполагает, что текст в необработанном файле уже является XML.

Вы начинаете с DocumentBuilderFactory, чтобы получить DocumentBuilder, а затем вы можете использовать его метод parse(), чтобы превратить входной поток в Document, который является внутренним представлением XML.

Если в необработанном файле есть что-то, отличное от XML, вы захотите как-то его просканировать (здесь свой код) и использовать найденный материал для создания из пустого Document.

Затем я обычно использую Transformer из TransformerFactory для преобразования Document в текст XML в файле, но может быть более простой способ.

0 голосов
/ 06 января 2010

Я думаю, что если вы попытаетесь загрузить его в XmlDocument, это будет хорошо

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...