java POI 修改 读取 word 内容

public static void writeDoc(String path,Map<String, String> map) {
		try {
			FileInputStream in = new FileInputStream(new File("D:\\需要读取的word.doc"));
			HWPFDocument hdt = new HWPFDocument(in);
			Range range = hdt.getRange();
			//读取word文本内容
			System.out.println(range.text());
			//替换文本内容
			for (Map.Entry<String,String> entry:map.entrySet()) {
				range.replaceText(entry.getKey(),entry.getValue());
			}
                       
			ByteArrayOutputStream ostream = new ByteArrayOutputStream();
			FileOutputStream out = new FileOutputStream("D:\\处理后的word.doc");
			hdt.write(ostream);
                        //输出字节流
			out.write(ostream.toByteArray());
			ostream.close();
		} catch (IOException e) {
			e.printStackTrace();
		} catch (Exception e) {
			e.printStackTrace();
		}
	}
	public static void main(String[] args) {
		Map<String, String> map=new HashMap<String, String>();
		map.put("test", "测试");
		writeDoc("D:\\111.doc",map);

	}

本实例代码使用的 POI-3.8-beta4-20110826.jar 和 poi-scratchpad-3.8-beta4-20110826.jar 连个包!

以前版本可能导致乱码,和内容不对的问题!

此版本经过验证可以修改word内容!

POI包下载地址:点击打开链接


阅读更多
个人分类: java
想对作者说点什么? 我来说一句

没有更多推荐了,返回首页

加入CSDN,享受更精准的内容推荐,与500万程序员共同成长!
关闭
关闭