32、使用poi给word文档表格中添加样式
File fileNew = new File(exportPath + exportName + ".docx");
InputStream streamNew = new FileInputStream(fileNew);
XWPFDocument documentNew = new XWPFDocument(streamNew);
Iterator<XWPFTable> itTable = documentNew.getTablesIterator();
int index_table = 0;
while (itTable.hasNext()) {
XWPFTable table = (XWPFTable) itTable.next();
index_table += 1;
int rcount = table.getNumberOfRows();
for (int i = 0; i < rcount; i++) {
XWPFTableRow row = table.getRow(i);
List<XWPFTableCell> cells = row.getTableCells();
for (int j = 0; j < cells.size(); j++) {
// 设置样式
List<XWPFParagraph> paragraphs = cells.get(j).getParagraphs();
for (int m = 0; m < paragraphs.size(); m++) {
XWPFParagraph xwpfParagraph = paragraphs.get(m);
List<XWPFRun> runs = xwpfParagraph.getRuns();
for (int k = 0; k < runs.size(); k++) {
XWPFRun xwpfRun = runs.get(k);
// CTFonts font = xwpfRun.getCTR().addNewRPr().addNewRFonts();
// //中文
// font.setEastAsia("仿宋_GB2312"); //改变中文字体设置这个
// // ASCII
// font.setAscii("Times New Roman"); //改变数字或者英文字体需要设置这个
CTRPr rpr = xwpfRun.getCTR().isSetRPr() ? xwpfRun.getCTR().getRPr() : xwpfRun.getCTR().addNewRPr();
CTFonts fonts = rpr.isSetRFonts() ? rpr.getRFonts() : rpr.addNewRFonts();
fonts.setAscii("仿宋_GB2312");
fonts.setEastAsia("仿宋_GB2312");
fonts.setHAnsi("仿宋_GB2312");
}
}
}
}
}
// changeText(documentNew);
// 删除掉之前的文件
// File fileOld = new File(exportPath + exportName + ".docx");
// fileOld.delete();
// 重新生成文件
OutputStream os1 = new FileOutputStream(exportPath + exportName+ ".docx");
// OutputStream os1 = new FileOutputStream(exportPath + exportName+"2222222"+ ".docx");
documentNew.write(os1);
documentNew.close();