关于一个截取字符串的难题!谢谢

在一个文件里有2个XML文件,我想把这里面的2个xml给剥离出来,每一个用jdom来解析!

现在的问题是:无法准确的将2个xml分开放到不同的String中去!!

例如String xml1={xml1};String xml2={XML2};



给一个算法或者思路也行!

我String.split截取的效果不是很好!

可以不用考虑性能问题,只要时机复杂度不大就行!谢谢!



---------------------------------------------------------------

<!---->

<queryhead>

<trnid>d1</trnid>


<type>n</type>


     <status>

0


          <message>ok</message>

     </status>

<pagecount>11</pagecount>


<recordperpage>n</recordperpage>


</queryhead>




<!---->

<queryresult>

<trnid>d1</trnid>

<type>n</type>

     <status>

0

          <message>ok</message>

     </status>

<pagenum>n</pagenum>

<recordperpage>n</recordperpage>

<result>

<balrec>

              <account>

                <acntno>1234567890123456789</acntno>

                <acntname>XX集团财务公司</acntname>

              </account>

              <balance>30000000.33</balance>

          </balrec>

<balrec>

              <account>

                <acntno>1234567890123456789</acntno>

                <acntname>XX集团财务公司</acntname>

              </account>

              <balance>30000000.33</balance>

          </balrec>



</reuslt>

</queryresult>

----------------------------------------------------------------------------------------

不考虑性能的话可以这样做:
[code="java"] String myXmlFileString =
"<?xml version = '1.0' encoding = \"GBK\"?>"
+ "" +
""+
"<?xml version = \"1.0\" encoding = \"GBK\"?>"
+"" +
" ";

    StringBuilder sb = new StringBuilder(myXmlFileString);

    //确定两个xml文件的分割索引
    int flag = sb.lastIndexOf("<?xml");

    String myFirstXml = sb.substring(0, flag);
    String myLastXml = sb.substring(flag, myXmlFileString.length());

    System.out.println(myFirstXml);
    System.out.println(myLastXml);[/code]

去掉第二个<?xml version = "1.0" encoding = "GBK"?> 改成一个可以解析的xml文件,然后用dom4j遍历queryhead节点,每个节点生成字符串再解析