Java生成xml 1.1版

时间:2012-06-05 22:10:13

标签: java xml sax

我有一个xml文件,其中包含以下标题:<?xml version="1.1" encoding="UTF-8"?>。此文件也是强制性的,因为包含了一些字符,因此版本为1.1。

我的任务是从文件中提取一些实体并将其再次保存为xml文件。如果我生成一个新的xml文件,它将在1.0版本中。由于新文件中存在一些编码错误,我认为问题是错误的xml版本。是否有可能在1.1版中生成xml文件(包括正确的标题)?

以下是我当前代码的片段:

//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");

我希望有人可以帮助我。

最佳, 迈克尔

1 个答案:

答案 0 :(得分:5)

您可能希望将版本指定为输出属性。

请参阅OutputKeys.VERSION