Fool's Garden

Talking about Windows Mobile and Embedded gadgets...Web counter

导航

Saving XML Dcouments in JAXP

Posted on 2005-06-10 17:34  Levins Dai  阅读(501)  评论(0)    收藏  举报

J2SE 1.4的JAXP (Jave API for XML Processing)并不支持在Document级别上面直接保存一个XML文档。我很容易就找到Document::SetNodeValue()方法来改变一个结点的内容,但却死活找不到类似于MSXML里面的saveXML()这样的方法,来保存一个更新过的XML文档。

后来发现,这个JAXP版本只支持DOM Level 2 (W3C Recommendation, Nov. 2000),没有提供直接保存XML文档的接口。但是,如果利用XML Transform则只需要几行代码就可以实现我们需要的功能:

      Source source = new DOMSource(document);
      File file = new File(filename);
      Result result = new StreamResult(file);
      Transformer xformer = TransformerFactory.newInstance().newTransformer();
      xformer.transform(source, result);

也许是为了更方面开发人员,在sun.com上看到了一个DOMUtil.java的程序,提供了一些对DOM Object的辅助操作功能,以上的代码片断即出自该文件。

另,
Microsoft今天发布了一个新产品:Acrylic的beta测试版。很奇怪的codename,想知道是做什么的吗,可以试一试