IT数码 购物 网址 头条 软件 日历 阅读 图书馆
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
图片批量下载器
↓批量下载图片,美女图库↓
图片自动播放器
↓图片自动播放器↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁
 
   -> Java知识库 -> 在eclipse 里 导入Java jxl 包,并进行简单excel操作 -> 正文阅读

[Java知识库]在eclipse 里 导入Java jxl 包,并进行简单excel操作

在eclipse 里 导入JExcel API ,并简单操作


It is just a way.

1.jexcelapi的下载和简介

1.1简介

Java Excel API is a mature, open source java API enabling developers to read, write, and modifiy Excel spreadsheets dynamically. Now java developers can read Excel spreadsheets, modify them with a convenient and simple API, and write the changes to any output stream (e.g. disk, HTTP, database, or any socket).

jexcelapi官方地址

有兴趣可以去看看官方的地址,里面的文档很详细。

下面给出官方下载地址

点一下就ok

一定记得解压,解压,解压!!!


关于jexcel api 简单来讲就是有个人自己写了一堆的函数(此处用函数其实不太恰当,你知道大意就行)可以实现对excel的读写和格式化输出,图表还有其他很多操作。然后他把这些函数放到网上供人们免费使用,让我们不用重复写功能一样的代码。懒人福利,这就是开源,也是代码可复用性的一个体现。

请允许我用一个不恰当的比喻:如果说数据结构这门课是在教你写出可以让别人用的函数,那么本文所想告诉你的就是如何调用别人写的函数。

我们赶上了时代的福利,很多东西前辈们写的已经很好了,我们只要学会用就好(这一步其实也很费劲),但想更近一步的大佬肯定更有野心哈。

1.2 下载

下面进入正题

1.解压压缩包,不要嫌我烦,真的好多人不解压。。。
在这里插入图片描述

2.解压成果后是不是得到一个文件夹,如上图所示,点开

在这里插入图片描述

2.jexcelapi的导入

以eclipse举例

导入方式起码三种,我讲最省事的一种

2.1预先准备好

  • jxl包
  • eclipse(用老师之前发的或者我在qq群发的版本都可以)

2.2正式过程

2.2.1.打开你的eclipse

在这里插入图片描述

2.2.2.创建一个java 项目

在这里插入图片描述

名字随便取,无脑finsish

2.2.3.正式开始

右键选中你刚刚新建的项目,选中src的都。。。

命名为lib

然后最关键的一步

好了之后会弹窗问你选择copy还是link,选copy最好。

2.2.4.配置路径

1.右键选中项目

2.点击点击再点击。

?

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-dxncgA0D-1633273015334)(D:\Typora\article\image-20211003222301600.png)]
在这里插入图片描述

3.选择路径

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tlE97WfL-1633273015336)(D:\Typora\article\image-20211003222553473.png)]

点击ok

4.应用

一定要点应用apply


3.Jexcelapi包的简单使用

3.1读取

package testexcel;
import java.io.File;
import java.io.IOException;
import jxl.Workbook;
import jxl.write.Label;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException;
import jxl.write.biff.RowsExceededException;
 
public class WriteExcel {
    public static void main(String[] args) throws IOException,
            RowsExceededException, WriteException {
        // 1、创建工作簿(WritableWorkbook)对象,打开excel文件,若文件不存在,则创建文件
        WritableWorkbook writeBook = Workbook.createWorkbook(new File(
                "D://test_hanhan.xls"));
 
        // 2、新建工作表(sheet)对象,并声明其属于第几页
        WritableSheet firstSheet = writeBook.createSheet("第一个工作簿", 1);// 第一个参数为工作簿的名称,第二个参数为页数
        WritableSheet secondSheet = writeBook.createSheet("第二个工作簿", 0);
 
        // 3、创建单元格(Label)对象,
        Label label1 = new Label(1, 2, "hanhan 1");// 第一个参数指定单元格的列数、第二个参数指定单元格的行数,第三个指定写的字符串内容
        firstSheet.addCell(label1);
        Label label2 = new Label(1, 2, "hanhan 2");
        secondSheet.addCell(label2);

        writeBook.write();
        writeBook.close();
    }
 
}

3.2写入

import java.io.FileInputStream;
import java.io.IOException;
import java.io.InputStream;
import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
import jxl.read.biff.BiffException;
public class ReadExcel {
    public static void main(String[] args) throws BiffException, IOException {
        // 1、构造excel文件输入流对象
        String sFilePath = "D:/01/0000/1.xls";
        InputStream is = new FileInputStream(sFilePath);
        // 2、声明工作簿对象
        Workbook rwb = Workbook.getWorkbook(is);
        // 3、获得工作簿的个数,对应于一个excel中的工作表个数
        rwb.getNumberOfSheets();

        Sheet oFirstSheet = rwb.getSheet(0);// 使用索引形式获取第一个工作表,也可以使用rwb.getSheet(sheetName);其中sheetName表示的是工作表的名称
//        System.out.println("工作表名称:" + oFirstSheet.getName());
        int rows = oFirstSheet.getRows();//获取工作表中的总行数
        int columns = oFirstSheet.getColumns();//获取工作表中的总列数
        for (int i = 0; i < rows; i++) {
            for (int j = 0; j < columns; j++) {
                Cell oCell= oFirstSheet.getCell(j,i);//需要注意的是这里的getCell方法的参数,第一个是指定第几列,第二个参数才是指定第几行
                System.out.println(oCell.getContents()+"\r\n");
            }
        }
    }

}

4.结束语

感谢java自动提示帮我改的一些错误,但写的时候也别太相信这个,这个也把我代码带进沟里去过。

诸位对此还是要慎重一点。

还有感冒期间改代码好烦,想出去玩。

感谢让我参考了代码的各位大佬,由于看了太多记不清出处,望您海涵。


  Java知识库 最新文章
计算距离春节还有多长时间
系统开发系列 之WebService(spring框架+ma
springBoot+Cache(自定义有效时间配置)
SpringBoot整合mybatis实现增删改查、分页查
spring教程
SpringBoot+Vue实现美食交流网站的设计与实
虚拟机内存结构以及虚拟机中销毁和新建对象
SpringMVC---原理
小李同学: Java如何按多个字段分组
打印票据--java
上一篇文章      下一篇文章      查看所有文章
加:2021-10-04 12:43:31  更:2021-10-04 12:45:15 
 
开发: C++知识库 Java知识库 JavaScript Python PHP知识库 人工智能 区块链 大数据 移动开发 嵌入式 开发工具 数据结构与算法 开发测试 游戏开发 网络协议 系统运维
教程: HTML教程 CSS教程 JavaScript教程 Go语言教程 JQuery教程 VUE教程 VUE3教程 Bootstrap教程 SQL数据库教程 C语言教程 C++教程 Java教程 Python教程 Python3教程 C#教程
数码: 电脑 笔记本 显卡 显示器 固态硬盘 硬盘 耳机 手机 iphone vivo oppo 小米 华为 单反 装机 图拉丁

360图书馆 购物 三丰科技 阅读网 日历 万年历 2024年11日历 -2024/11/27 10:51:35-

图片自动播放器
↓图片自动播放器↓
TxT小说阅读器
↓语音阅读,小说下载,古典文学↓
一键清除垃圾
↓轻轻一点,清除系统垃圾↓
图片批量下载器
↓批量下载图片,美女图库↓
  网站联系: qq:121756557 email:121756557@qq.com  IT数码