apache.poi包简单操作word文档

import java.io.ByteArrayOutputStream;import java.io.File;import java.io.FileInputStream;import java.io.FileOutputStream;import java.io.IOException;import java.util.Iterator;import java.util.Map;import javax.servlet.ServletException;import javax.servlet.ServletOutputStream;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import org.apache.poi.hwpf.HWPFDocument;import org.apache.poi.hwpf.model.FieldsDocumentPart;import org.apache.poi.hwpf.usermodel.Field;import org.apache.poi.hwpf.usermodel.Fields;import org.apache.poi.hwpf.usermodel.Range;/** * word文档操作工具* Created by lichunlong on 2015/5/6 0006. */public class WordUtil {/**并另保存在本地需要修改的键值对*/public static void writeAndSave(Map<String, String> map) {try {模板).getCanonicalPath();FileInputStream inputStream = ));HWPFDocument doc = new HWPFDocument(inputStream);//Fields fields = doc.getFields();//Iterator<Field> ite = fields.getFields(FieldsDocumentPart.MAIN).iterator();//while(ite.hasNext()){//System.out.println(ite.next().getType());//}文本内容Range range = doc.getRange();//System.out.println(range.text());//替换文本内容for (Map.Entry<String,String> entry : map.entrySet()) {range.replaceText(entry.getKey(), entry.getValue());}//输出字节流ByteArrayOutputStream outputStream = new ByteArrayOutputStream();String fileName = ""+System.currentTimeMillis();fileName += ".doc";FileOutputStream out = +fileName,true);doc.write(outputStream);out.write(outputStream.toByteArray());out.close();outputStream.close();} catch (IOException e) {e.printStackTrace();} catch (Exception e) {e.printStackTrace();}}/**并提供下载requestresponse需要修改的键值对ServletException* @throws IOException*/public static void writeAndPost(HttpServletRequest request, HttpServletResponse response, Map<String, String> map) throws ServletException, IOException{try {模板文件).getCanonicalPath();FileInputStream inputStream = ));HWPFDocument doc = new HWPFDocument(inputStream);模板内容的指定字段Range range = doc.getRange();for (Map.Entry<String,String> entry : map.entrySet()) {range.replaceText(entry.getKey(), entry.getValue());}内容文件流,提供下载response.reset();response.setContentType("application/x-msdownload");response.addHeader();ByteArrayOutputStream outputStream = new ByteArrayOutputStream();ServletOutputStream servletOutputStream = response.getOutputStream();doc.write(outputStream);servletOutputStream.write(outputStream.toByteArray());servletOutputStream.flush();servletOutputStream.close();} catch (IOException e) {e.printStackTrace();} catch (Exception e) {e.printStackTrace();}finally{}}}

,三亚呀——赴一个蓝天碧海。

apache.poi包简单操作word文档

相关文章:

你感兴趣的文章:

标签云: