Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 使用saxon执行xquery并获取字符串作为结果_Java_String_Expression_Xquery - Fatal编程技术网

Java 使用saxon执行xquery并获取字符串作为结果

Java 使用saxon执行xquery并获取字符串作为结果,java,string,expression,xquery,Java,String,Expression,Xquery,您好,我正在使用saxon在java中运行xquery。 我希望将结果以strig形式作为xml格式,将结果传递给字符串变量,并将其转换为Json格式。问题是我无法将结果作为字符串。 有什么想法吗,谢谢 StaticQueryContext sqc= c.newStaticQueryContext(); DynamicQueryContext dqc =new DynamicQueryContext(c); // Processor processor = new Pr

您好,我正在使用saxon在java中运行xquery。 我希望将结果以strig形式作为xml格式,将结果传递给字符串变量,并将其转换为Json格式。问题是我无法将结果作为字符串。 有什么想法吗,谢谢

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

///如上所述,只需将最后一行更改为

StringWriter StringWriter=新StringWriter()

exp.run(dqc、新StreamResult(stringWriter)、道具)

字符串结果=stringWriter.toString()

System.out.println(“结果:+Result”)