excel的导入导出的实现
1.创建Book类,并编写set方法和get方法
package com.bean; public class Book { private int id; private String name; private String type; // public int a; public String getType() { System.out.println("调用了类型方法"); return type; } public void setType(String type) { this.type = type; } // public void test (String name,int a){ // System.out.println("调用了多参数的方法"); // } public String getName() { System.out.println("调用了名称方法"); return name; } public void setName(String name) { this.name = name; } public int getId() { System.out.println("调用了序号方法"); return id; } public void setId(int id) { this.id = id; } }
2.创建ExcelBook类实现导入导出
package com.main; import java.io.File; import java.util.ArrayList; import com.bean.Book; import jxl.Cell; import jxl.Sheet; import jxl.Workbook; import jxl.write.Label; import jxl.write.WritableSheet; import jxl.write.WritableWorkbook; public class ExcelBook { public static void main(String[] args) { ExcelBook excelBook = new ExcelBook(); //创建集合 // ArrayList<Book> arrayList = new ArrayList<Book>(); // Book book = new Book(); // book.setId(1); // book.setName("Java语言"); // book.setType("面向对象"); // Book book1 = new Book(); // book1.setId(2); // book1.setName("西游记"); // book1.setType("故事"); // Book book2 = new Book(); // book2.setId(3); // book2.setName("高数"); // book2.setType("难"); // arrayList.add(book); // arrayList.add(book1); // arrayList.add(book2); // excelBook.excelOut(arrayList); ArrayList<Book> ar1 = excelBook.excelIn(); for(Book bo2 : ar1){ System.out.println(bo2.getId()+" "+bo2.getName()+" "+bo2.getType()); } } public void excelOut(ArrayList<Book>arrayList){ WritableWorkbook bookk = null;//Excle对象 try { //创建excel对象 bookk = Workbook.createWorkbook(new File("D:/Sourcecode/Java/fanshe/book.xls")); //通过excel对象创建一个选项卡 WritableSheet sheet = bookk.createSheet("sheet1", 0); //创建一个单元格对象参数为 列 行 值 for(int i = 0; i < arrayList.size();i++){ Book bo = arrayList.get(i); Label la1 = new Label(0, i,String.valueOf(bo.getId())); Label la2 = new Label(1, i,bo.getName()); Label la3 = new Label(2, i, bo.getType()); sheet.addCell(la1);//放入选项卡中 sheet.addCell(la2); sheet.addCell(la3); } //写入目标路径 bookk.write(); } catch (Exception e) { e.printStackTrace(); }finally{ try { bookk.close(); } catch (Exception e) { e.printStackTrace(); } } } public ArrayList<Book> excelIn(){ ArrayList<Book> ar = new ArrayList<Book>();//返回集合 Workbook book = null; try { //获取到excle对象 book = Workbook.getWorkbook(new File("D:/Sourcecode/Java/fanshe/book.xls"));//文件路径 Sheet sheet = book.getSheet(0);//获取第一个选项卡对象(第零列) for(int i = 0; i < sheet.getRows();i++){//向文件中读入值,getRows()获取数据中有多少条数据 Book bo = new Book(); Cell cell = sheet.getCell(0,i);//cell对象为单元格对象,取出数据i行0列 bo.setId(Integer.valueOf(cell.getContents()));//getContents获取单元格对象的值 bo.setName(sheet.getCell(1,i).getContents()); bo.setType(sheet.getCell(2,0).getContents()); ar.add(bo); } } catch (Exception e) { e.printStackTrace(); }finally{ book.close(); } return ar; } }
运行结果:导出时,在指定路径出现下图内容
导出时结果如下:
调用了序号方法
调用了名称方法
调用了类型方法
1 Java语言 面向对象
调用了序号方法
调用了名称方法
调用了类型方法
2 西游记 面向对象
调用了序号方法
调用了名称方法
调用了类型方法
3 高数 面向对象
此方法虽然可以实现excel的导入导出,但因导入导出的数据信息比较少,但如果数据信息比较多,此方法实现起来非常麻烦,所以应该利用java反射机制实现,在上一个随笔中已经介绍。
excel的导入导出的实现的更多相关文章
- c# .Net :Excel NPOI导入导出操作教程之读取Excel文件信息及输出
c# .Net :Excel NPOI导入导出操作教程之读取Excel文件信息及输出 using NPOI.HSSF.UserModel;using NPOI.SS.UserModel;using S ...
- OpenXml Excel数据导入导出(含图片的导入导出)
声明:里面的很多东西是基于前人的基础上实现的,具体是哪些人 俺忘了,我做了一些整合和加工 这个项目居于openxml做Excel的导入导出,可以用OpenXml读取Excel中的图片 和OpenXml ...
- java实现excel的导入导出(poi详解)[转]
java实现excel的导入导出(poi详解) 博客分类: java技术 excel导出poijava 经过两天的研究,现在对excel导出有点心得了.我们使用的excel导出的jar包是poi这个 ...
- NodeJs之EXCEL文件导入导出MongoDB数据库数据
NodeJs之EXCEL文件导入导出MongoDB数据库数据 一,介绍与需求 1.1,介绍 (1),node-xlsx : 基于Node.js解析excel文件数据及生成excel文件. (2),ex ...
- java 中Excel的导入导出
部分转发原作者https://www.cnblogs.com/qdhxhz/p/8137282.html雨点的名字 的内容 java代码中的导入导出 首先在d盘创建一个xlsx文件,然后再进行一系列 ...
- PowerDesigner数据库设计PDM基于Excel的导入导出总结
经常用到pdm来管理代码,一两张表,手写一下还凑合,一旦表多了,就慌了.于是,开始学习用vbs进行Excel的来快速导入导出操作PDM就变得很紧急了,搜罗了网络上的很多vbs脚本,各有各的优点,但对于 ...
- JAVA对Excel的导入导出
今天需要对比2个excel表的内容找出相同:由于要学的还很多上手很慢所以在这做个分享希望对初学的有帮助: 先是pom的配置: <dependency> <groupId>org ...
- ThinkPHP使用PHPExcel实现Excel数据导入导出完整实例
这篇文章主要介绍了ThinkPHP使用PHPExcel实现Excel数据导入导出,非常实用的功能,需要的朋友可以参考下 本文所述实例是使用在Thinkphp的开发框架上,要是使用在其他框架也是同样的方 ...
- Access中一句查询代码实现Excel数据导入导出
摘 要:用一句查询代码,写到vba中实现Excel数据导入导出,也可把引号中的SQL语句直接放到查询分析器中执行正 文: 导入数据(导入数据时第一行必须是字段名): DoCmd.RunSQL &quo ...
随机推荐
- Day5-python基础之函数(二)
生成器 迭代器 装饰器 模块 来个需求,一个列表中所有元素都+1 1.最容易想到的方法 for循环,找列表索引,对应每个值+1 list_old = [1,2,3,4,5,6,7,8,9] for ...
- PostgreSQL
PostgreSQL新手入门 作者: 阮一峰 日期: 2013年12月22日 自从MySQL被Oracle收购以后,PostgreSQL逐渐成为开源关系型数据库的首选. 本文介绍PostgreSQ ...
- 防火墙iptables
iptables命令可用于配置Linux的包过滤规则,常用于实现防火墙.NAT.咋一看iptables的配置很复杂,掌握规律后,其实用iptables完成指定任务并不难,下面我们通过具体实例,学习ip ...
- jetty9内嵌到应用,并在启动后加载WebApplicationInitializer,可运行jsp
声明:本文所介绍的两功能都已经测试通过. 第一步先确保你用的是java 8,并依赖需要的相关jar包,以下是用gradle进行依赖的信息: ext { taglibsStandardVersion = ...
- Eclipse集成Tomcat:6个常见的”how to”问题
学习一门新技术通常是一个很困难的过程,当你想要同时学习两门有交叉的新技术的时候,这个过程会变得更困难.Tomcat和Eclipse是Java EE开发中最流行的2个必备神器,因此,为了成为一个专业的开 ...
- 前端面霸系列(1):doctype 、Quirks Mode & Standards Mode 、document.compatMode
近几日,气压猛降,雾霾铺天盖地,眼看一场腥风血雨就要在前端江湖爆发,这场战争不仅是百度.腾讯.阿狸.搜狐网易新浪等江湖豪门抢夺人才的大战,也是诸位江湖人士重新洗牌的好时机.每年10月,江湖的波动胜过华 ...
- 10、代码块、构造代码块、静态代码块及main方法之间的关系
1.普通代码块: 在方法或语句中出现在{}之间的类容就称为普通代码块,简称代码块.普通代码块和一般的语句执行顺序由他们在代码中出现的次序决定--“先出现先执行”,即顺序执行. /*下面第一个类时合法的 ...
- scrollView滚动原理
首先要明确的是,scrollview 其实和普通的 view 并没有多大的差别,只不过给它加上了一些手势和约定. 我们知道,要让一个 scrollview 能够滚动的方法是设置它的 contentSi ...
- HTML5、微信、APP:创业寒冬只能选其一,该选哪个?
HTML5手机网站 优势:开发技术简单,研发周期短,用户接触成本低 劣势:功能实现相比APP存在差距,用户重复使用难度大,用户粘性差 适合场景:把手机网站当成网络上的“电子产品介绍手册”.手机网站更适 ...
- 关于 FPGA 内部信号扇入扇出
扇入.扇出系数 扇入系数是指门电路允许的输入端数目.一般门电路的扇入系数为1—5,最多不超过8.扇出系数是指一个门的输出端所驱动同类型门的个数,或称负载能力.一般门电路的扇出系数为8,驱动器的扇出系数 ...