java 从Excel 输出和输入
本文实现了使用java 从数据库中获得对象,并存入集合中,
然后输出到Excel,并设置样式
package com.webwork; import java.io.File;
import java.io.IOException;
import java.util.List; import org.jdom.output.Format; import jxl.Workbook;
import jxl.write.Label;
import jxl.write.WritableCellFormat;
import jxl.write.WritableFont;
import jxl.write.WritableSheet;
import jxl.write.WritableWorkbook;
import jxl.write.WriteException;
import jxl.write.biff.RowsExceededException; public class Jxls {
public static void main(String[] args) {
try {
new Jxls().writeExcel();
} catch (RowsExceededException e) {
e.printStackTrace();
} catch (WriteException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
}
public void writeExcel() throws RowsExceededException, WriteException, IOException{
new Jdbc().addList();
List< Student> stuLists = Jdbc.getStuList();
WritableWorkbook book =null; book = Workbook.createWorkbook(new File("e:/io/stuInfo.xls")); WritableSheet sheet = book.createSheet("studentInfo", 0); /*
* format设置样式
*/
//设置字体
WritableFont font1 = new WritableFont(WritableFont.ARIAL,18,WritableFont.BOLD);
WritableFont font2 = new WritableFont(WritableFont.ARIAL, 13, WritableFont.BOLD);
//格式化单元格
WritableCellFormat format1 = new WritableCellFormat(font1);
WritableCellFormat format2 = new WritableCellFormat(font2);
WritableCellFormat format3 = new WritableCellFormat();
//设置样式
format1.setAlignment(jxl.format.Alignment.CENTRE);//水平对齐方式
format1.setVerticalAlignment(jxl.format.VerticalAlignment.CENTRE); //垂直对齐方式
format1.setBackground(jxl.format.Colour.LIGHT_BLUE);//设置背景颜色
format1.setBorder(jxl.format.Border.ALL, jxl.format.BorderLineStyle.THIN);//设置边框 //合并单元格第一行
sheet.mergeCells(0, 0, 3, 0);
Label label = new Label(0, 0, "yc95全班信息表",format1);
sheet.addCell(label); //设置每列小标题
String [] str = {"id","name","sex","age"};
for (int i = 0; i < str.length; i++) {
sheet.addCell(new Label(i, 1, str[i]));
sheet.setColumnView(i, 20);//设置列宽
} for (int i = 2; i < stuLists.size(); i++) {
Student s = stuLists.get(i);
//System.out.println(s);
Label label1 = new Label(0,i ,s.getId());
Label label2 = new Label(1,i, s.getName());
Label label3 = new Label(2,i, s.getSex());
Label label4 = new Label(3,i, s.getAge());
sheet.addCell(label1);
sheet.addCell(label2);
sheet.addCell(label3);
sheet.addCell(label4);
}
book.write();
book.close();
System.out.println("插入excel数据成功!!!");
}
}
下面是excel中得到的内容
输出到Excel后,相应的就是从Excel中去取数据
package com.webwork; import java.io.File;
import java.io.IOException;
import java.util.List; import jxl.Cell;
import jxl.Sheet;
import jxl.Workbook;
import jxl.read.biff.BiffException; public class ReadExcel {
public static void main(String[] args) {
List<Student> stuLists = Jdbc.getStuList();
Workbook book = null;
try {
book = Workbook.getWorkbook(new File("e:/io/stuInfo.xls"));
} catch (BiffException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
Sheet[] sheets = book.getSheets();
for (int i = 0; i < sheets.length; i++) {
Sheet sheet = sheets[i];
int rows= sheet.getRows();
for (int j = 1; j < rows; j++) {
Cell[] cells= sheet.getRow(j);
for (int k = 0; k < cells.length; k++) {
Cell cell = cells[k];
String id = cell.getContents();
System.out.print(id+"\t");
} System.out.println();
} } }
}
输出的结果如下:
java 从Excel 输出和输入的更多相关文章
- java代码实现从键盘输入编号,输出价格,并且不再编号内的,无效输入!!!!
总结:请给我更好的建议 package com.badu; import java.util.Scanner; //从键盘输入次数,通过输入的编号,输出对应的的商品价格: public class t ...
- Java初学者作业——编写JAVA程序,在控制台输入一位学生的英语考试成绩,根据评测规则,输出对应的成绩等级。定义方法实现学生成绩的评测功能。
返回本章节 返回作业目录 需求说明: 编写JAVA程序,在控制台输入一位学生的英语考试成绩,根据评测规则,输出对应的成绩等级.要求:定义方法实现学生成绩的评测功能. 学生的英语考试成绩进行评测,评测规 ...
- Java初学者作业——编写JAVA程序,根据用户输入课程名称,输出对应课程的简介,各门课程的简介见表
返回本章节 返回作业目录 需求说明: 编写JAVA程序,根据用户输入课程名称,输出对应课程的简介,各门课程的简介见表 课程名称 课程简介 JAVA课程 JAVA语言是目前最流行的编写语言,在本课程中将 ...
- 编写Java程序,实现从控制台输入对应个数的整数,输出对输入整数的从大到小显示
编写Java程序,实现从控制台输入对应个数的整数,输出对输入整数的从大到小显示 效果如下: 实现代码: import java.util.Arrays; import java.util.Scanne ...
- Java学习笔记:基本输入、输出数据操作实例分析
Java学习笔记:基本输入.输出数据操作.分享给大家供大家参考,具体如下: 相关内容: 输出数据: print println printf 输入数据: Scanner 输出数据: JAVA中在屏幕中 ...
- Java处理excel文件
好久好久没写blog了,感觉都生锈了,最近弄了弄java处理excel,特来简单粘贴一下: package excel; import java.io.BufferedInputStream; imp ...
- Java 读写 excel 实战完全解析
本文微信公众号「AndroidTraveler」首发. 背景 时值毕业季,很多毕业生初入职场. 因此,这边也写了一些新手相关的 Android 技术点. 比如上一篇的 Android 开发你需要了解的 ...
- 转:java 解析excel,带合并单元的excel
收集了一些对博主有帮助的博文,如下 >>>>>>>>>>>第一部分: 首先,mavn导入jar包 <!-- 解析excel需要导 ...
- JXL包大解析;Java程序生成excel文件和解析excel文件内容
最近需求变化,需要把excel导入 我以前没有做过,所以我查了一些资料 和参考别人的代码 以下是多种方式: import java.io.File; import java.io.FileInputS ...
随机推荐
- type=file 自定义文件默认可选类型
<input type="file" accept=".csv, application/vnd.openxmlformats-officedocument.spr ...
- 题目1008:最短路径问题(SPFA算法)
问题来源 http://ac.jobdu.com/problem.php?pid=1008 问题描述 给定一个G(V,E)有向图,起点s以及终点t,求最短路径. 问题分析 典型的单源最短路径问题,可以 ...
- ionic基础知识
ion-header-bar(头部 页眉) 在内容顶部添加一个固定header栏. 用法 <ion-header-bar align-title="left" class=& ...
- Pycharm与github的秘密
GIT介绍 GIT文章请看老男孩教育-银角大王的博客: http://www.cnblogs.com/wupeiqi/articles/7295372.html Git 是一个开源的分布式版本控制软件 ...
- 博客主题皮肤探索-GitHub和jsdelivr的使用
有个前言 本萌并不会前端相关的知识,一切都是自己慢慢摸索出来的,如果存在代码方面的不足,请尽快告诉我~~~ 使用一个主题 目前我博客使用是 https://www.cnblogs.com/bndong ...
- java se系列(十一)线程
1 线程的概述 进程:正在运行的程序,负责了这个程序的内存空间分配,代表了内存中的执行区域. 线程:就是在一个进程中负责一个执行路径. 多线程:就是在一个进程中多个执行路径同时执行. 图上的一键优化与 ...
- java多线程-cas及atomic
大纲: cas atomic 一.cas cas:compareAndSwap,一种乐观锁. cas思想:cas需要三个值,v是内存值,e是期望值,n是要修改的值.当内存中的值v等于预期值e(说明内存 ...
- Pitfalls of using opencv GpuMat data in CUDA kernel code
Please note that cv::cuda::GpuMat and cv::Mat using different memory allocation method. cv::cuda::Gp ...
- (转)nginx location在配置中的优先级
原文:https://www.bo56.com/nginx-location%E5%9C%A8%E9%85%8D%E7%BD%AE%E4%B8%AD%E7%9A%84%E4%BC%98%E5%85%8 ...
- Kafka 0.9 新消费者API
kafka诞生之初,它自带一个基于scala的生产者和消费者客户端.但是慢慢的我们认识到这些API有很多限制.比如,消费者有一个“高级”API支持分组和异常控制,但是不支持很多更复杂的应用场景:它也有 ...