向word生成的xml中插入xml

来源:互联网 发布:java解压缩文件 编辑:程序博客网 时间:2024/06/04 18:55

List list=element.getParent().getParent().getParent().elements();
     Properties properties=new Properties();
  FileInputStream inputStream=new FileInputStream(ServletActionContext.getRequest().getRealPath("")+"\\template\\"+eletext.substring(2,eletext.length() - 1)+".properties");
  properties.load(inputStream);
  inputStream.close();
  List<String> sortList=new ArrayList<String>();//有顺序的信息
  for(Object o:properties.keySet()){
   sortList.add(o.toString());
  }
  if(!sortList.isEmpty()){
   sortList=sortProp(sortList);
  }

String xmlDocument="<w:document xmlns:w=\"http://schemas.openxmlformats.org/wordprocessingml/2006/main\">";
  String xmlrPr="<w:rPr><w:rFonts w:hAnsi=\"宋体\" w:hint=\"eastAsia\"/><w:b/><w:sz w:val=\"24\"/><w:szCs w:val=\"24\"/></w:rPr>";
  String xmlurPr="<w:rPr><w:rFonts w:hAnsi=\"宋体\" w:hint=\"eastAsia\"/><w:b/><w:sz w:val=\"24\"/><w:szCs w:val=\"24\"/><w:u w:val=\"single\"/></w:rPr>";
  String xmlpPr="<w:pPr>"+"<w:pStyle w:val=\"a3\"/><w:spacing w:lineRule=\"auto\" w:line=\"360\"/>"+xmlrPr+"</w:pPr>";
  String xmlP="<w:p w:rsidP=\"003E549F\" w:rsidRDefault=\"003E549F\" w:rsidRPr=\"00592206\" w:rsidR=\"003E549F\">";
  String xmlPreserve="<w:r w:rsidRPr=\"00592206\"><w:rPr><w:rFonts w:hAnsi=\"宋体\" w:hint=\"eastAsia\"/><w:b/><w:sz w:val=\"24\"/><w:szCs w:val=\"24\"/></w:rPr><w:t xml:space=\"preserve\">  </w:t></w:r>";
  String no="";
  for(String str:sortList){
   String label=new String(str.substring(str.lastIndexOf(".")+1).getBytes("ISO8859-1"),"GBK");
   String profix=properties.get(str).toString().substring(properties.get(str).toString().lastIndexOf(".")-2,properties.get(str).toString().lastIndexOf(".")-1);
   if(!no.equals(str.substring(0,1))){
    no=str.substring(0,1);
    if(!no.equals("1")){
     xmlDocument+="</w:p>";
    }
    xmlDocument+=xmlP+xmlpPr+"<w:r>"+xmlrPr+"<w:t>"+label+":"+"</w:t>"+"</w:r>"+"<w:r>"+xmlurPr+"<w:t>"+dataMap.get(profix+label)+"</w:t>"+"</w:r>";
   }else{
    xmlDocument+=xmlPreserve;
    xmlDocument+="<w:r>"+xmlrPr+"<w:t>"+label+":"+"</w:t>"+"</w:r>"+"<w:r>"+xmlurPr+"<w:t>"+dataMap.get(profix+label)+"</w:t>"+"</w:r>";
   }
  }
  xmlDocument+="</w:p>";
  xmlDocument+="</w:document>";
     Document doc=XmlBuilder.createXMLDoc(xmlDocument);
     List pList=doc.selectNodes("//w:p");
     i--;
     list.remove(i);
     for(Object o:pList){
      Element e=(Element)o;
      list.add(i,e.createCopy());
      i++;
     }

原创粉丝点击