Java将数据按列写入Excel并设置格式(字体、背景色、自动列宽、对齐方式等)...

本文使用jxl.jar工具类库将数据按列写入Excel并设置格式(字体、背景色、自动列宽、对齐方式等)。

/**
     * 按列写入Excel并设置格式
     * 
     * @param outputUrl
     *            输出路径
     * @param sheetName
     *            工作薄名称
     * @param titles
     *            表头
     * @param arrayList
     *            表头数据
     * @throws IOException
     * @throws RowsExceededException
     * @throws WriteException
     */
    public static void writeExcel(String outputUrl, String sheetName, String[] titlesArray,
            ArrayList<String>... arrayList) throws IOException, RowsExceededException, WriteException {
        if (outputUrl == null || outputUrl.length() == 0) {
            System.out.println(
                    "Param(s) Error:outputUrl is required and the length of outputUrl is required greater than 0.");
            return;
        }
        int n = arrayList.length;
        if (titlesArray.length != n) {
            System.out.println("Param(s) Error:the titles' length is hoped to be equal to arrayList's length.");
            return;
        }
        //创建Excel文件
        File file = new File(outputUrl);
        file.createNewFile();
        //创建工作簿
        WritableWorkbook workbook = Workbook.createWorkbook(file);
        //创建sheet,设置名称为sheetName,默认Sheet1
        if (sheetName == null || sheetName.length() == 0) {
            sheetName = "Sheet1";
        }
        WritableSheet sheet = workbook.createSheet(sheetName, 0);
        //设置titles
        String[] titles = titlesArray;
        //设置表头:列名和各种格式
        for (int i = 0; i < titles.length; i++) {
            WritableFont font = new WritableFont(WritableFont.ARIAL, 10, WritableFont.BOLD);
            CellView cellView = new CellView();
            cellView.setAutosize(true); //设置自动大小  
            sheet.setColumnView(i, cellView); //根据内容自动设置列宽  
            WritableCellFormat format = new WritableCellFormat(font);
            format.setAlignment(Alignment.CENTRE); //居中对齐
            format.setBackground(Colour.YELLOW); //背景色
            format.setBorder(Border.ALL, BorderLineStyle.THICK, Colour.BLACK);//边框
            Label label = new Label(i, 0, titles[i], format);
            sheet.addCell(label);
        }
        //写入数据,并设置一些格式
        for (int i = 0; i < n; i++) {
            for (int j = 0; j < arrayList[i].size(); j++) {
                //WritableFont.createFont("宋体"):设置字体为宋体
                //10:设置字体大小
                //WritableFont.BOLD:设置字体加粗(BOLD:加粗 NO_BOLD:不加粗)
                //false:设置非斜体
                //UnderlineStyle.NO_UNDERLINE:没有下划线
                WritableFont font = new WritableFont(WritableFont.createFont("宋体"), 10, WritableFont.NO_BOLD);
                WritableCellFormat format = new WritableCellFormat(font);
                Label label = new Label(i, j + 1, arrayList[i].get(j), format);
                sheet.addCell(label);
            }
        }
        //写入数据
        workbook.write();
        //关闭工作簿
        workbook.close();
    }

测试代码:

public static void main(String[] args) throws Exception {
        String txtUrl = "C:\\Users\\Administrator\\Desktop\\匹配.txt";
        ArrayList<String> list1 = ExcelReadUtil.readBookName(txtUrl);
        ArrayList<String> list2 = ExcelReadUtil.readFilePath(txtUrl);
        String[] titles = { "书名", "路径" };
        writeExcel("C:\\Users\\Administrator\\Desktop\\匹配.xls", "匹配", titles, list1, list2);
    }

测试结果;

 

转载于:https://www.cnblogs.com/sgh1023/p/10026817.html

Java开发有一说一》——向Excel文件中写数据 接着上一节的内容,本节主要讲述如何通过Java程序向Excel文件中写数据,包括:1、数据类型的控制;2、数据格式化。要快速上手,我们还是通过阅读代码来学习,这样可以帮助大家建立一个更直观的概念和认识。1、写入Excel数据类型控制     程序描述:通过Java程序新建一个名为test.xls的文件,Excel的第一行第一写一个字符串,在第一行第二写一个数字,在第一行第三写一个日期。package jxl.zhanhj; import java.io.File; import java. 阅读详情

相关推荐

Dify + Oracle + MCP:轻松构建 RAG 应用与Oracle MCP Agent

通过一个实践案例,展示如何使用 Oracle 23ai 数据库、Dify、Oracle SQLcl MCP 从零开始构建一个功能完备的 RAG 应用,以及通过 Agent 与 SQLcl MCP Server 实现 Oracle 数据访问。

Rambo zheng的博客 2470

java用POI写Excel写入数据

java用POI写Excel写入数据 ​ 我们都知道poi较为方便的的写入方法是按行写入数据,但是如果需要合单元格的话比较好的办法是按写入数。下面我介绍一种从pojo类中取出数据写入的方式。 ​ 需要注意的是,第二次获取行对象时应该使用get方法,而不是create,如果一直使用create()会导致前一行输入的数据消失,最后变成只生成了最后一行的数据 // 获取每行参数 HSSFRow row = null; HSSFCell cell = null;

m0_47349308的博客 4646

Spring AI从入门到精通:构建智能Spring应用的全面指南

随着人工智能技术的快速发展,将大语言模型(LLM)与企业应用集成已成为趋势。Spring AI作为Spring官方推出的AI集成框架,为开发者提供了便捷、标准化的方式来构建智能应用。本文将从基础概念到高级应用,全面介绍Spring AI的核心功能与实践技巧。Spring AI 是 VMware 于 2023 年推出的开源框架,旨在简化大语言模型(LLM)与 Spring 应用的集成。它提供了统一的 API 抽象,支持多种 LLM 供应商,包括 OpenAI、Azure OpenAI、Hugging Face

qq_36929638的博客 1042

Java数据数据写入Excel

Java创建Excel的表头和写入Excel文件中

qq_42638422的博客 557

Java 设置Excel自适应行高、

excel中,可通过设置自适应行高或自动排版,是一种比较常用的快速调整表格整体布局的方法。设置自适应时,可考虑2种情况: 1.固定数据设置行高、自适应数据(常见的设置自适应方法) 2.固定,缩小数据字体大小适应 本文将通过java程序来介绍具体的自适应设置方法。 工具:Free Spire.XLS for Java (免费版) 注:可通过官网下载包,...

Eiceblue的专栏 6959

java excel设置row 里面的度自适应

HSSFCellStyle rowStyle = row.getRowStyle(); rowStyle.setWrapText(true); row.setRowStyle(rowStyle);

Kodulf的专栏 1万+

java 设置excel度_javaexcel如何设置指定

Java 开发过程当中经常会遇到java表格操作的场景。如何实现轻松、快捷的设置呢,下面让小编为你带来javaexcel设置指定的方法。javaexcel设置指定的方法:方法1/*** 设置指定度* @param table* @param colname 名* @param width*/public void setColumnWidth(JTable table,Obje...

weixin_42623010的博客 4555

java 设置表头字体_Java数据写入Excel设置格式字体背景色自动对齐方式等)...

本文使用jxl.jar工具类库将数据写入Excel设置格式(字体背景色自动对齐方式)。/*** 按写入Excel设置格式** @param outputUrl* 输出路径* @param sheetName* 工作薄名称* @param titles* 表头* @param arrayList* ...

weixin_35851553的博客 1014

java excel 字体大小_Java数据写入Excel设置格式字体背景色自动对齐方式等)...

/*** 按写入Excel设置格式**@paramoutputUrl* 输出路径*@paramsheetName* 工作薄名称*@paramtitles* 表头*@paramarrayList* 表头数据*@throwsIOException*@throwsRowsExceededException*@th...

weixin_39637285的博客 1164

Java数据写入Excel设置格式字体背景色自动对齐方式等)

本文使用jxl.jar工具类库将数据写入Excel设置格式字体背景色自动对齐方式等)。

码上暴富 3553

java自动格式对齐_Java数据写入Excel设置格式字体背景色自动对齐方式等)...

/*** 按写入Excel设置格式**@paramoutputUrl* 输出路径*@paramsheetName* 工作薄名称*@paramtitles* 表头*@paramarrayList* 表头数据*@throwsIOException*@throwsRowsExceededException*@th...

weixin_31077513的博客 557

POI 导出Excel 且根据内容设置自适应

2019独角兽企业重金招聘Python工程师标准>>> ...

weixin_34100227的博客 4321

POI HSSFCellStyle 设置 Excel 单元格样式

POI中可能会用到一些需要设置EXCEL单元格格式的操作小结: 先获取工作薄对象: HSSFWorkbook wb = new HSSFWorkbook(); HSSFSheet sheet = wb.createSheet(); HSSFCellStyle setBorder = wb.createCellStyle(); 一、设置背景色: setBorder.setFillForegro...

LuckyKing01的博客 5082

【Python实例学习】用Python的xlsxwriter模块操作Excel表格,包括写入数据、样式设置、插入图片等

python来新建Excel插入数据。 1.首先,我们使用的是xlsxwriter模块,需要先安装。打开命令提示符,用pip进行安装。 pip install xlsxwriter #python2 pip3 install xlsxwriter #python3 2.安装成功。 3.开始执行代码。 # _*_ coding: utf-8 _*_ # 从引入xlsxwri...

王怕怕升职记 2207

Java用POI导出Excel单元格、字体、居中样式

1、引入maven依赖 <dependency> <groupId>org.apache.poi</groupId> <artifactId>poi</artifactId> <version>4.1.0</version> </dependency> 2、此处我们以合多行数据为例,效果如下: .

qq_29500121的博客 1万+

jxl 设置excel 字体 背景色单元格

package com.email.jav; import java.io.File; import java.io.IOException; import java.net.URL; import jxl.Workbook; import jxl.format.Und

为什么 2784

java导出excel表格设置行高,POI导出Excel设置单元格格式

使用Apache的POI相关API导出Excel设置单元格格式栗子,一下各个代码之间的变量是通用的,要是在某个代码块中找不到某个变量,则可以向上找寻准备工作InputStream = template//文件输入流XSSFWorkbook wb = new XSSFWorkbook(template);Sheet sheet = wb.getSheetAt(0);设置单元格格式XSSFCellSt...

weixin_34502341的博客 2224

POI中设置Excel单元格格式样式(居中,字体,边框等)

创建sheet什么的就不多说了,直接进入正题 HSSFCellStyle cellStyle = wb.createCellStyle(); 一、设置背景色: cellStyle.setFillForegroundColor((short) 13);// 设置背景色 cellStyle.setFillPattern(HSSFCellStyle.SOLID_FOREGROUND); 二、设置边框: cellStyle.setBorderBottom(HSSFCellStyle.BORDER_THIN); //

weixin_52841956的博客 8421

POI总结-java读取写入excel文件(读取excel导入数据库-读取数据数据写入excel

POI包结构 HSSF - 读写Microsoft Excel XLS格式 07office以前的版本 XSSF - 读写Microsoft Excel OOXML XLSX格式 07office以后的版本 HWPF- 读写Microsoft Word DOC格式 针对的word文档 HSLF - 读写Micorsoft PowerPoint格式 创建一个maven项目 先导入POI相关的第三方jar包 <dependency> <groupId>org.apac

programmer_trip的博客 4504

纺织品和服装行业小米&网易严选&南极电商模式与数据对比:白牌电商,星辰大海-0730-国金证券-38页.pdf

纺织品和服装行业小米&网易严选&南极电商模式与数据对比:白牌电商,星辰大海-0730-国金证券-38页.pdf

上一篇: PyCharm出现TabError: inconsistent use of tabs and spaces in indentation最简单实用的解决办法...
下一篇: 只需两步!Eclipse+Maven快速构建第一个Spring Boot项目
baobo2427
博客等级 码龄9年 0粉丝 0原创
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值