我是靠谱客的博主 尊敬白羊,最近开发中收集的这篇文章主要介绍java中利用jxl包对Excel文件进行修改保存,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

今天做了一个小任务,可是对于我来说却完全摸不着头脑,因为是第一次接触,以前都没听过,所以感觉非常不可思议!具体的任务见下图:

                                    

 如果是一个表的话还好办,(刚开始没想到办法,就一行一行的展开,有几千条数据,就算是这样半个多小时才完成一个)可是现在有十五批,感觉就很无奈了,一不留神可能就会排错,后来,我在网上查资料看能有什么快捷的办法,无意中看到很多花哨的java对excel的修改,有什么字体大小、颜色的设置,边框的设置等,看得头都晕了。(太花哨,掩盖了主体)后来仔细沉下心来,弄明白了一点,下面我来讲解一下我的思路:对Excel表的修改,无非就是1、打开表;2、读取表中数据;3、新建一个表;4、对读取到的数据进行操作保存到新表中。在这所有步骤前,先到网上下载一个jxl.jar包

完成包的导入后进行java代码的编写:

import java.io.File;


import jxl.Cell;
import jxl.NumberCell;
import jxl.Sheet;
import jxl.Workbook;
import jxl.write.Label;
import jxl.write.Number;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;


/**
 *@author 王能斌
 *基本的对Excel表的操作
 * */
public class ExcelHanldle {

public static void main(String[] args) {
try {
//找到需要修改的表
Workbook wb = Workbook.getWorkbook(new File("G:/2016铅球.xls"));
//找到表中的第一个sheet
Sheet read= wb.getSheet(0);
//获取表的列数
int rows = read.getRows();
//新建要写入数据的表,并指定路径
WritableWorkbook book = Workbook.createWorkbook(
new File("F:/第一批.xls"));
//第几个表被创建
WritableSheet sheet = book.createSheet("体育项目", 0);
//添加新表各列字段 【new Lable(列,行,数据)】不要弄混了
sheet.addCell(new Label(0, 0, "机器号"));
sheet.addCell(new Label(1, 0, "批次"));
sheet.addCell(new Label(2, 0, "节次"));
sheet.addCell(new Label(3, 0, "组次"));
sheet.addCell(new Label(4, 0, "密号"));
sheet.addCell(new Label(5, 0, "性别"));
int total = 1;
//下面是我这个任务具体实现的算法,可以看看
for(int  i = 1; i < rows ; i++){
int name = (int) ((NumberCell)read.getCell(0,i)).getValue();
String pc = read.getCell(1,i).getContents();
int jc = (int) ((NumberCell)read.getCell(2,i)).getValue();
int zc = (int) ((NumberCell)read.getCell(3,i)).getValue();
Cell c4 = read.getCell(4,i);
Cell c5 = read.getCell(5,i);
String sex = read.getCell(6,i).getContents();
int a = Integer.parseInt(c4.getContents());
int b = Integer.parseInt(c5.getContents());
int sum = b - a + 1;
//循环往第一个表中拿出数据添加到新建表
for(int k = total; k < (total + sum) ; k++){
//添加数字类型的数据(getContents()得到的是String类型的数据)
Number nam = new Number(0, k, name);
sheet.addCell(nam);
sheet.addCell(new Label(1,k,pc));
Number jie = new Number(2, k, jc);
sheet.addCell(jie);
Number zu = new Number(3, k, zc);
sheet.addCell(zu);
sheet.addCell(new Label(4,k,"0" + a++));
sheet.addCell(new Label(5,k,sex));
}
total += sum ;
}
//表的写入
book.write();
//关闭
book.close();
} catch (Exception e) {
e.printStackTrace();
}
}
}


最终实现的效果,可以在F盘下找到新建的表:

最后

以上就是尊敬白羊为你收集整理的java中利用jxl包对Excel文件进行修改保存的全部内容,希望文章能够帮你解决java中利用jxl包对Excel文件进行修改保存所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(64)

评论列表共有 0 条评论

立即
投稿
返回
顶部