java用poi实现对word读取和修改操作.doc_第1页
java用poi实现对word读取和修改操作.doc_第2页
java用poi实现对word读取和修改操作.doc_第3页
全文预览已结束

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

java用poi实现对word读取和修改操作新增WordUtil类,将代码拷进去直接运行即可package com.cjhxfund.ats.fm.instr;import java.io.FileOutputStream;import java.util.HashMap;import java.util.Iterator;import java.util.List;import java.util.Map;import java.util.Map.Entry;import java.util.Set;import org.apache.poi.POIXMLDocument;import org.apache.poi.xwpf.usermodel.XWPFDocument;import org.apache.poi.xwpf.usermodel.XWPFParagraph;import org.apache.poi.xwpf.usermodel.XWPFRun;import org.apache.poi.xwpf.usermodel.XWPFTable;import org.apache.poi.xwpf.usermodel.XWPFTableCell;import org.apache.poi.xwpf.usermodel.XWPFTableRow;public class WordUtil public static void searchAndReplace(String srcPath, String destPath, Map map) try XWPFDocument document = new XWPFDocument(POIXMLDocument.openPackage(srcPath); / 替换段落中的指定文字 Iterator itPara = document.getParagraphsIterator(); while (itPara.hasNext() XWPFParagraph paragraph = (XWPFParagraph) itPara.next(); /String s = paragraph.getParagraphText(); Set set = map.keySet(); Iterator iterator = set.iterator(); while (iterator.hasNext() String key = iterator.next(); List runs=paragraph.getRuns(); for (XWPFRun run : runs) String text = run.getText(0); if(text != null) /String runText = run.toString(); if(text.indexOf(key) != -1) text = text.replace(key, map.get(key); System.out.println(key=+key+runText=+text); run.setText(text,0); / 替换表格中的指定文字 Iterator itTable = document.getTablesIterator(); while (itTable.hasNext() XWPFTable table = (XWPFTable) itTable.next(); int rcount = table.getNumberOfRows(); for (int i = 0; i rcount; i+) XWPFTableRow row = table.getRow(i); List cells = row.getTableCells(); for (XWPFTableCell cell : cells) for (Entry e : map.entrySet() if (cell.getText().equals(e.getKey() cell.removeParagraph(0); cell.setText(e.getValue(); FileOutputStream outStream = null; outStream = new FileOutputStream(destPath); document.write(outStream); outStream.close(); catch (Exception e) e.printStackTrace(); public static void main(String args) throws Exception Map map = new HashMap(); map.put(附件, 文件); map.put(结果, 结束); /map.put(金额, 数量); String srcPath

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论