zoukankan      html  css  js  c++  java
  • 通过poi解析word(替换word中的部分内容)

    解析03版(.doc)word:

    HWPFDocument doc=null;              //HWPFDocument 对应03版word
            try {
                 doc =new HWPFDocument(new FileInputStream("F:\upload\template_03.doc"));    //获得要替换的word模板
                 Range range = doc.getRange();                             //range获取word中的内容
                for (Map.Entry<String,String> entry:replaceContent.entrySet()){          //通过一个Map来替换内容 Map中key值存被替换的内容  Map中value值存要替换的内容,最后通过一个循环实现
                    range.replaceText(entry.getKey(),entry.getValue());
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
            return doc;

    解析07(.docx) word:

    XWPFDocument docx=null;
            try {
                docx=new XWPFDocument(new FileInputStream("F:\upload\template_07.docx"));
                List<XWPFParagraph> paragraphs = docx.getParagraphs();                //07版需先获取段落;最后在获取以格式分割的最小单位run
                for (XWPFParagraph paragraph:paragraphs){
                    List<XWPFRun> runs = paragraph.getRuns();
                    for (XWPFRun run:runs){
                        String str=run.getText(run.getTextPosition());          //获取run中的字符串
                        for (Map.Entry<String,String> entry:replaceContent.entrySet()){
                            str=str.replace(entry.getKey(),entry.getValue());
                        }
                        run.setText(str,0);
                    }
                }
            } catch (IOException e) {
                e.printStackTrace();
            }
            return docx;
  • 相关阅读:
    Python 06--面向对象编程
    Python 05--常用模块学习
    6大排序算法,c#实现
    Git管理unity3d项目
    cordova crosswalk android 7.0 问题
    ionic/cordvoa 修改platform文件夹里的文件,build会覆盖问题
    webStorm Linux Ubuntu 中文搜狗输入问题
    Ionic android 底部tabs
    ionic 添加新module
    yii2 Nav::widget() 和 Menu::widget()
  • 原文地址:https://www.cnblogs.com/shouyaya/p/12099714.html
Copyright © 2011-2022 走看看