救急啊!需要实现的是,我现在是要把200多的xml文件合成一个xml文件。我之前是把每个xml读出来,然后再拼接字符串。之后再把字符串写进一个xml文件中,但是字符串超长了,写不进文件。请教大家要什么方法啊,最好能给下代码。拜托了怎么往xml文件中追加记录呢?这个我也不会。譬如我一个xml内容是<?xml version="1.0" encoding="UTF-8"?>
<PolicyList  type="COMMON">
<Policy  Date ="张三">
</PolicyList>另外一个xml内容是
<?xml version="1.0" encoding="UTF-8"?>
<PolicyList  type="COMMON">
<Policy  Date ="李四">
</PolicyList>我向合并成
<?xml version="1.0" encoding="UTF-8"?>
<PolicyList  type="COMMON">
<Policy  Date ="张三">
<Policy  Date ="李四">
</PolicyList>

解决方案 »

  1.   

    你每个 XML 大概有多大?结构是什么样的?只有一层么?合并方式真如示例那么简单么?了解详细的要求才能找出更适合的方案。
      

  2.   

    我是楼主,最大的xml的200MB,结构就是那样的。<Policy Date ="李四">这个属性很多,对应数据库的一条记录,字段很多就只写了一个字段。这个如何处理呢?
      

  3.   

    FileWriter 中用这个构造就会追加了:FileWriter(File file, boolean append)
      

  4.   

    先往文件中写入 <?xml version="1.0" encoding="UTF-8"?>
    <PolicyList type="COMMON">再抽取每个 XML 中的 <Policy Date ="***" /> 的东西,追加到这个文件中去。最后写上 </PolicyList> 不就行了?
      

  5.   

    BufferedWriter bw = new BufferedWriter(new FileWriter("xxx.xml", true));
    BufferedReader br = ....
    for(String str = null; (str = br.readLine()) != null; ) {
       str = str.trim();
       if(str.startsWith("<Policy Date")) {
           bw.newLine();
           bw.write(str);
       }
    }
      

  6.   

    好家伙,200 个 200MB 左右的文件,那合并后最少 3GB 啊,这么大的文件要来干嘛用?能打开么?