Java создает xml версии 1.1

У меня есть файл xml со следующим заголовком: <?xml version="1.1" encoding="UTF-8"?>. Также обязательно, чтобы этот файл был версии 1.1, поскольку в него включены некоторые символы, которые не разрешены в версии 1.1.

Моя задача состоит в том, чтобы извлечь некоторые объекты из файла и снова сохранить его как файл xml. Если я создам новый XML-файл, он будет версии 1.0. Поскольку в новом файле есть некоторые ошибки кодирования, я предполагаю, что проблема заключается в неправильной версии xml. Есть ли возможность создать xml файл в версии 1.1 (включая правильный заголовок)?

Вот фрагмент моего текущего кода:

//read the file
SAXParserFactory factory = SAXParserFactory.newInstance();
SAXParser saxParser = factory.newSAXParser();
DefaultHandler handler = new DefaultHandler() {
...
}

//write the output file
SAXTransformerFactory fac = (SAXTransformerFactory)TransformerFactory.newInstance();
final TransformerHandler tfh = fac.newTransformerHandler();
Transformer transformer = tfh.getTransformer();
transformer.setOutputProperty(OutputKeys.METHOD, "xml");
transformer.setOutputProperty(OutputKeys.INDENT, "yes");

Я надеюсь, что кто-нибудь может мне помочь.

Лучший, Майкл


person Michael    schedule 05.06.2012    source источник


Ответы (1)


Возможно, вы захотите указать версию в качестве выходного свойства.

См. OutputKeys.VERSION.

person Don Roby    schedule 05.06.2012