Java数据导出(写)Excel文件 解析

本文涉及的产品
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
全局流量管理 GTM,标准版 1个月
简介:   在编程中经常需要使用到表格(报表)的处理主要以Excel表格为主。下面给出用java写入数据到excel表格方法:   1.添加jar文件     java导入导出Excel文件要引入jxl.jar包,最关键的是这套API是纯Java的,并不依赖Windows系统,即使运行在Linux下,它同样能够正确的处理Excel文件。

  在编程中经常需要使用到表格(报表)的处理主要以Excel表格为主。下面给出用java写入数据到excel表格方法:

  1.添加jar文件

    java导入导出Excel文件要引入jxl.jar包,最关键的是这套API是纯Java的,并不依赖Windows系统,即使运行在Linux下,它同样能够正确的处理Excel文件。下载地  址:http://www.andykhan.com/jexcelapi/

  2.jxl对Excel表格的认识

  可以参见http://www.cnblogs.com/xudong-bupt/archive/2013/03/19/2969997.html

  如下图是准备要建立的Excel文件t.xls。坐标(列,行):角色(0,0),助教(0,3),功能描述(3,0),UC22(1,4)。

   3.java代码根据程序中的数据生成上述图片所示的t.xls文件

import java.io.File;
import jxl.*;
import jxl.write.Label;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;

public class Writer_excel{
    public static void main(String[] args) {
        //标题行
        String title[]={"角色","编号","功能名称","功能描述"};
        //内容
        String context[][]={{"UC11","设置课程","创建课程"},
                            {"UC12","设置学生名单","给出与课程关联的学生名单"},
                            {"UC21","查看学生名单",""},
                            {"UC22","查看小组信息","显示助教所负责的小组列表信息"}
                            };
        //操作执行
        try { 
            //t.xls为要新建的文件名
            WritableWorkbook book= Workbook.createWorkbook(new File("t.xls")); 
            //生成名为“第一页”的工作表,参数0表示这是第一页 
            WritableSheet sheet=book.createSheet("第一页",0); 
            
            //写入内容
            for(int i=0;i<4;i++)    //title
                sheet.addCell(new Label(i,0,title[i])); 
            for(int i=0;i<4;i++)    //context
            {
                for(int j=0;j<3;j++)
                {
                    sheet.addCell(new Label(j+1,i+1,context[i][j])); 
                }
            }
            sheet.addCell(new Label(0,1,"教师"));
            sheet.addCell(new Label(0,3,"助教"));
            
            /*合并单元格.合并既可以是横向的,也可以是纵向的
             *WritableSheet.mergeCells(int m,int n,int p,int q);   表示由(m,n)到(p,q)的单元格组成的矩形区域合并
             * */
            sheet.mergeCells(0,1,0,2);
            sheet.mergeCells(0,3,0,4);
            
            //写入数据
            book.write(); 
            //关闭文件
            book.close(); 
        }
        catch(Exception e) { } 
    }
}

  如果要导出的数据在表格中排放有一定的规则,则可以直接通过编程来实现报表的导出(写)功能。

相关文章
|
14天前
|
缓存 Java 调度
Java并发编程:深入解析线程池与Future任务
【7月更文挑战第9天】线程池和Future任务是Java并发编程中非常重要的概念。线程池通过重用线程减少了线程创建和销毁的开销,提高了资源利用率。而Future接口则提供了检查异步任务状态和获取任务结果的能力,使得异步编程更加灵活和强大。掌握这些概念,将有助于我们编写出更高效、更可靠的并发程序。
|
14天前
|
Java 大数据
解析Java中的NIO与传统IO的区别与应用
解析Java中的NIO与传统IO的区别与应用
|
12天前
|
存储 算法 安全
Java面试题:Java内存模型及相关知识点深度解析,Java虚拟机的内存结构及各部分作用,详解Java的垃圾回收机制,谈谈你对Java内存溢出(OutOfMemoryError)的理解?
Java面试题:Java内存模型及相关知识点深度解析,Java虚拟机的内存结构及各部分作用,详解Java的垃圾回收机制,谈谈你对Java内存溢出(OutOfMemoryError)的理解?
22 0
|
13天前
|
数据格式 Python
【Python】已解决:Excel无法打开文件test.xIsx“,因为文件格式或文件扩展名无效。请确定文件未损坏,并且文件扩展名与文件的格式匹配。
【Python】已解决:Excel无法打开文件test.xIsx“,因为文件格式或文件扩展名无效。请确定文件未损坏,并且文件扩展名与文件的格式匹配。
49 0
|
4天前
|
存储 分布式计算 DataWorks
MaxCompute产品使用合集之如何在代码中解析File类型的文件内容
MaxCompute作为一款全面的大数据处理平台,广泛应用于各类大数据分析、数据挖掘、BI及机器学习场景。掌握其核心功能、熟练操作流程、遵循最佳实践,可以帮助用户高效、安全地管理和利用海量数据。以下是一个关于MaxCompute产品使用的合集,涵盖了其核心功能、应用场景、操作流程以及最佳实践等内容。
31 11
|
5天前
|
JavaScript Java
Java 将Markdown文件转换为Word和PDF文档
【7月更文挑战第5天】Java中使用`Spire.Doc for Java`库可方便地将Markdown转换为Word或PDF。基本步骤包括导入模块,创建`Document`对象,加载Markdown文件,然后保存为目标格式(`.docx`或`.pdf`)。若遇到`Invalid UTF-8 stream`错误,需确保Markdown文件是UTF-8无BOM编码。页面设置可通过`PageSetup`类调整。注意,实际应用会依据具体需求和环境有所调整。
|
6天前
|
存储 监控 算法
Java 内存管理与垃圾回收机制深度解析
本文深入探讨了Java的内存管理与垃圾回收(GC)机制,从JVM内存结构出发,详细分析了堆、栈、方法区的职能及交互。文章重点讨论了垃圾回收的核心概念、常见算法以及调优策略,旨在为Java开发者提供一套系统的内存管理和性能优化指南。 【7月更文挑战第17天】
|
6天前
|
Java 编译器 开发者
Java 内存模型深度解析
本文旨在深入探讨Java内存模型的复杂性及其对并发编程的影响。通过揭示内存模型的核心原理、JMM的结构,并结合具体案例和数据分析,本文将帮助读者理解Java内存模型如何确保多线程程序的正确性和性能,以及如何在实际应用中有效利用这一模型进行高效的并发编程。 【7月更文挑战第17天】
12 4
|
7天前
|
Java
Java中的异常处理机制深度解析
本文旨在深入探讨Java语言中异常处理的机制,从基础概念到高级应用,全面剖析try-catch-finally语句、自定义异常以及异常链追踪等核心内容。通过实例演示和代码分析,揭示异常处理在Java程序设计中的重要性和应用技巧,帮助读者构建更为健壮和易于维护的程序。
|
5天前
|
关系型数据库 MySQL Java

推荐镜像

更多