2013-02-11 76 views
0

您好我正在使用saxon在java中運行xquery。 我想在strig中得到結果,格式爲xml,將此結果傳遞給字符串變量並將其轉換爲Json格式。問題是我不能以字符串的形式得到結果。 任何想法謝謝。使用saxon執行xquery並獲取字符串作爲結果

StaticQueryContext sqc= c.newStaticQueryContext(); 
     DynamicQueryContext dqc =new DynamicQueryContext(c); 
//  Processor processor = new Processor(sqc); 
     final XQueryExpression exp = sqc.compileQuery(queryFinal ) ; 

     InputStream is = new ByteArrayInputStream(xmlText.getBytes(Charset.defaultCharset())); 
     InputSource XMLSource=new InputSource(is); 
     SAXSource SAXs=new SAXSource(XMLSource); 
     DocumentInfo DI=sqc.buildDocument(SAXs); 
     dqc.setContextNode(DI); 

     Properties props=new Properties(); 
      props.setProperty(OutputKeys.METHOD,"xml"); 
      props.setProperty(OutputKeys.INDENT,"yes"); 

     exp.run(dqc,new StreamResult (destStream),props); 

回答

1

///一切如上,只是改變了最後一行....

的StringWriter的StringWriter =新的StringWriter();

exp.run(dqc,new StreamResult(stringWriter),props);

String result = stringWriter.toString();

System.out.println(「Result:」+ result);

相關問題