zoukankan      html  css  js  c++  java
  • Java生成word文档

    itext-rtf-2.1.7.jar,下载地址:http://download.csdn.net/detail/xuxu198899223/7717727



    package word;
    
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.util.ArrayList;
    import java.util.List;
    
    import com.lowagie.text.Document;
    import com.lowagie.text.DocumentException;
    import com.lowagie.text.Element;
    import com.lowagie.text.Font;
    import com.lowagie.text.PageSize;
    import com.lowagie.text.Paragraph;
    import com.lowagie.text.pdf.BaseFont;
    import com.lowagie.text.rtf.RtfWriter2;
    
    public class WordUtil {
        private static Document document;
        private static BaseFont baseFont;
    
        /**
         * 创建word,并设置纸张文档
         * @param filePath  文档路径  
         * @throws DocumentException
         * @throws IOException
         */
        private static void openWordFile(String filePath) throws DocumentException, IOException {
            document = new Document(PageSize.A4);
            RtfWriter2.getInstance(document, new FileOutputStream(filePath));
            document.open();
            baseFont = BaseFont.createFont();
        }
    
        /**
         * 设置标题
         * @param title  标题
         * @return
         * @throws DocumentException
         */
        private static boolean setTitle(String title) throws DocumentException {
            Font font = new Font(baseFont, 12, Font.BOLD);
            Paragraph pTitle = new Paragraph(title + "
    ");
            pTitle.setFont(font);
            pTitle.setAlignment(Element.ALIGN_CENTER);
            return document.add(pTitle);
        }
    
        /**
         * 设置文档内容
         * @param content文档内容 
         * @return
         * @throws DocumentException
         */
        private static boolean setContent(String content) throws DocumentException {
            Font font = new Font(baseFont, 10, Font.NORMAL);
            Paragraph pContent = new Paragraph(content);
            //设置字体
            pContent.setFont(font);
            pContent.setAlignment(Element.ALIGN_LEFT);
            pContent.setSpacingAfter(5);
            pContent.setFirstLineIndent(20);
            return document.add(pContent);
        }
    
        /**
         * 创建丰富内容的word文档
         * @param filePath  文档保存地址
         * @param title  文档标题
         * @param contents  文档内容
         * @return
         */
        public static boolean CreateWordFile(String filePath, String title, List<String> contents) {
            boolean returnValue = false;
            try {
                openWordFile(filePath);
                returnValue = setTitle(title);
                for (int i = 0; i < contents.size(); i++) {
                    returnValue = returnValue && setContent(contents.get(i));
                }
                document.close();
            } catch (DocumentException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
            return returnValue;
        }
    
        /**
         * 创建单一内容的word文档
         * @param filePath  文档保存地址
         * @param title   文档标题
         * @param content  文档内容
         * @return
         */
        public static boolean CreateWordFile(String filePath, String title, String content) {
            boolean returnValue = false;
            try {
                openWordFile(filePath);
                returnValue = setTitle(title);
                returnValue = returnValue && setContent(content);
                document.close();
            } catch (DocumentException e) {
                e.printStackTrace();
            } catch (IOException e) {
                e.printStackTrace();
            }
            return returnValue;
        }
    
        @SuppressWarnings({ "unused", "static-access" })
        public static void main(String[] args) {
            WordUtil wordUtil = new WordUtil();
            List<String> strList = new ArrayList<String>();
            //传入内容为字符串
            wordUtil.CreateWordFile("C:\word.doc", "标题居中", "我爱Java");
            //传入内容为字符串List
            //wordUtil.CreateWordFile("e:\word.doc", "标题居中", strList);
        }
    }


  • 相关阅读:
    腾讯视频插入网页的代码;
    FW: 软件持续交付的诉求;
    TOGAF
    Windows WSL2 htop打开黑屏的问题解决
    requests.exceptions.ConnectionError: HTTPSConnectionPool(host='appts.xxx.com%20', port=443):
    sqlalchemy实现模糊查询
    jenkins过滤版本,可选择版本
    QML 布局之一:锚布局详解(各种例子)
    Qt Quick 常用控件:Button(按钮)用法及自定义
    The Common Order Operations of Dis Operation System (DOSS)
  • 原文地址:https://www.cnblogs.com/lcchuguo/p/5330626.html
Copyright © 2011-2022 走看看