如何使用SAX解析器从流中获取整个xml作为字符串?

时间:2013-05-06 06:34:42

标签: java xml xml-parsing saxparser

我知道您可以使用以下内容将InputStream转换为字符串:

 public static String convertStreamToString(ServletInputStream is) {
    java.util.Scanner s = new java.util.Scanner(is).useDelimiter("\\A");
    return s.hasNext() ? s.next() : "";
}

哪个好,但我的输入流是使用SAX Parser解析的xml,我想知道是否有更快的方法将XML作为字符串,因为解析器已遍历流。

我可以通过在所有事件中查找字符串来使其工作,但我想知道是否有更快/内置的方法来执行此操作,因为此代码对性能非常敏感

1 个答案:

答案 0 :(得分:0)

如果您必须使用SAX,似乎没有内置方式,请参阅Echoing an XML File with the SAX Parser。或者如果可以,请考虑使用StAX