1 import java.io.FileInputStream;2 import java.io.FileOutputStream;3 import java.io.IOException;4 import java.io.InputStream;5 import java.io.OutputStream;6 import java.math.BigInteger;7 import java.util.HashMap;8 import java.util.List;9 import java.util.Map;10
11 import org.apache.poi.xwpf.usermodel.XWPFDocument;12 import org.apache.poi.xwpf.usermodel.XWPFParagraph;13 import org.apache.poi.xwpf.usermodel.XWPFRun;14 import org.apache.poi.xwpf.usermodel.XWPFStyle;15 import org.apache.poi.xwpf.usermodel.XWPFStyles;16 import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTDecimalNumber;17 import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTOnOff;18 import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTPPr;19 import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTString;20 import org.openxmlformats.schemas.wordprocessingml.x2006.main.CTStyle;21 import org.openxmlformats.schemas.wordprocessingml.x2006.main.STStyleType;22
23
24 public classtest {25 private static Map> orderMap =new HashMap>();26
27 public voidinit(String targetPath,String sourcePath){28 InputStream is = null;29 XWPFDocument doc=null;30 OutputStream out=null;31 try{32 XWPFDocument createDoc = newXWPFDocument();33
34 is = newFileInputStream(sourcePath);35 doc = new XWPFDocument(is);36 //获取段落
37 List paras=doc.getParagraphs();38
39 for(XWPFParagraph para : paras){40 //System.out.println(para.getCTP());//得到xml格式
41 System.out.println(para.getStyleID());//段落级别
42 System.out.println(para.getParagraphText());//段落内容
43
44 String titleLvl = getTitleLvl(doc,para);//获取段落级别
45 if("a5".equals(titleLvl)||"HTML".equals(titleLvl)||"".equals(titleLvl)||null==titleLvl){46 titleLvl = "8";47 }48 System.out.println(titleLvl+"-----");//0,1,2
49 if(!"8".equals(titleLvl)){50 System.out.println(titleLvl+"===="+para.getParagraphText());51 }52
53
54 XWPFParagraph ctPara =createDoc.createParagraph();55 //一个XWPFRun代表具有相同属性的一个区域。
56 XWPFRun ctRun =ctPara.createRun();57 String ctText =para.getParagraphText();58 ctRun.setFontFamily("宋体");//字体
59 ctRun.setFontSize(12