[代码] [Java]代码 import java.io.FileOutputStream;
import java.util.HashMap;
import java.util.List;
i http://www.aaafaipiao.com/linked/20130205.do http://www.haofapiao.com/linked/20130205.do; ; mport java.util.Map;
import java.util.Map.Entry;
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.openxml4j.opc.OPCPackage;
/*
* @author:Dede
* @version:1.0
* @createTime:Feb 1, 2013 3:20:14 PM
* @package:
* @fileName:POITest.java
* @description:
*/
public class POITest {
public static void searchAndReplace(String srcPath, String destPath,Map map) {
try {
OPCPackage pack = POIXMLDocument.openPackage(srcPath);
XWPFDocument doc = new XWPFDocument(pack);
List paragraphs = doc.getParagraphs();
for (XWPFParagraph tmp : paragraphs) {
//System.out.println(tmp.getParagraphText());
List runs = tmp.getRuns();
for (XWPFRun r : runs) {
System.out.println("XWPFRun-Text:" r.getText(0));
for (Entry e : map.entrySet()) {
if (r.getText(0).equals(e.getKey())) {
r.setText(map.get(r.getText(0)),0);
}
}
}
}
FileOutputStream fos = new FileOutputStream(destPath);
doc.write(fos);
fos.flush();
fos.close();
} catch (Exception e) {
e.printStackTrace();
}
}
public static void main(String[] args) throws Exception {
HashMap map=new HashMap();
map.put("${name}", "OSC红薯");
map.put("${yyyy}", "2013");
map.put("${mm}", "02");
map.put("${dd}", "01");
String srcPath = "c:\\20110829_4416.docx";
String destPath = "c:\\2.doc";
searchAndReplace(srcPath ,destPath,map);
}
}