Java操作Excel文件以及在Android中的应用
本文章由临江仙原创,转载请注明出处:http://blog.csdn.net/zhy_cheng/article/details/10286563
Excel作为一种有格式的文件,可以使用Java来对Excel来操作,借助jxl库,可以很方便的对Excel进行读取,写入,修改。关于jxl库,在项目最后上传的工程中可以下载。
下面来看看操作Excel的API。
1.创建并且写入数据
WritableWorkbook wwb=Workbook.createWorkbook(f);
创建一个Excel文档。可以通过一个File对象或者OutputStream来创建。
WritableSheet ws=wwb.createSheet("zhycheng", 0);
通过Excel文档获得工作簿。
Label label=new Label(0,0,"liu"); ws.addCell(label); jxl.write.Number n=new jxl.write.Number(0,1,34.56);
ws.addCell(n); wwb.write();
wwb.close();
Label是文字,Number是数字,这样就在(0,0)的位置加入了一个Label,在(0,1)的位置,加入了一个数字。
2.读数据
读数据的话,获取文档,获取工作簿,获取单元格,从单元格获取内容。
Workbook wb=Workbook.getWorkbook(new File("create.xls"));//获取文档
Sheet sheet=wb.getSheet(0); //获取工作簿
Cell c=sheet.getCell(0, 0); //获取单元格
System.out.println(c.getContents()); //获取内容
wb.close();
这样就可以获得Excel的内容了。
3.修改数据
Workbook wwb=Workbook.getWorkbook(new File("create.xls"));//原文件文件
WritableWorkbook wbook=Workbook.createWorkbook(new File("create.xls"), wwb);//修改的副本
WritableSheet ws=wbook.createSheet("liu", 1);
ws.addCell(new Label(3,3,"Hello"));
wbook.write();//写入
wbook.close();
这样,就可以修改原Excel文件了。
4.Java读取Excel插入SQLite
public void onCreate(Bundle savedInstanceState)
{
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
lv=(ListView) findViewById(R.id.listView1);
al=new ArrayList<HashMap<String,String>>();
AssetManager am=this.getAssets();
InputStream is=null;
try {
is=am.open("data.xls");
Workbook wb=Workbook.getWorkbook(is);
Sheet sheet=wb.getSheet(0);
int row=sheet.getRows();
HashMap<String,String> hm;
for(int i=0;i<row;++i)
{
Cell cellarea=sheet.getCell(0, i);
Cell cellschool=sheet.getCell(1, i);
System.out.println(cellarea.getContents()+":"+cellschool.getContents());
hm=new HashMap<String,String>();
hm.put("AREA", cellarea.getContents());
hm.put("SCHOOL", cellschool.getContents());
al.add(hm);
}
SimpleAdapter sa=new SimpleAdapter(this,al,R.layout.lv_item,
new String[]{"AREA","SCHOOL"},new int[]{R.id.tv_area,R.id.tv_school});
lv.setAdapter(sa); } catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
} }
上面的代码演示的是从asset中的data.xls获取数据,提供给Android使用,下面是读取data.xls的效果图
5.总结
Excel来保存数据,对于数据比较小的话,还是很推荐使用的,应为有优秀的图形化操作工具WPS,操作起来很方便,但是,数据量一旦大了的话,效率就不如SQLite了。当然,在使用的灵活性方面也不如SQLite,SQLite有SQL语句,可以很灵活的查询。
最后上传工程代码:
Java操作Excel的代码:点击下载
Android使用Excel的代码:点击下载
Java操作Excel文件以及在Android中的应用的更多相关文章
- java 操作excel 文件
JAVA EXCEL API:是一开放源码项目,通过它Java开发人员可以读取Excel文件的内容.创建新的Excel文件.更新已经存在的Excel文件.使用该API非Windows操作系统也可以通过 ...
- [转载]Java操作Excel文件的两种方案
微软在桌面系统上的成功,令我们不得不大量使用它的办公产品,如:Word,Excel.时至今日,它的源代码仍然不公开已封锁了我们的进一步应用和开发.在我们实际开发企业办公系统的过程中,常常有客户这样子要 ...
- java操作excel文件
采用POI操作excel API:http://poi.apache.org/apidocs/org/apache/poi/hssf/usermodel/HSSFCell.html poi包:http ...
- java使用Apache POI操作excel文件
官方介绍 HSSF is the POI Project's pure Java implementation of the Excel '97(-2007) file format. XSSF is ...
- java使用POI操作excel文件,实现批量导出,和导入
一.POI的定义 JAVA中操作Excel的有两种比较主流的工具包: JXL 和 POI .jxl 只能操作Excel 95, 97, 2000也即以.xls为后缀的excel.而poi可以操作Exc ...
- JXL包大解析;Java程序生成excel文件和解析excel文件内容
最近需求变化,需要把excel导入 我以前没有做过,所以我查了一些资料 和参考别人的代码 以下是多种方式: import java.io.File; import java.io.FileInputS ...
- Java生成和操作Excel文件(转载)
Java生成和操作Excel文件 JAVA EXCEL API:是一开放源码项目,通过它Java开发人员可以读取Excel文件的内容.创建新的Excel文件.更新已经存在的Excel文件.使用该A ...
- Java生成和操作Excel文件
JAVA EXCEL API:是一开放源码项目,通过它Java开发人员可以读取Excel文件的内容.创建新的Excel文件.更新已经存在的Excel文件.使用该API非Windows操作系统也可以通过 ...
- C#项目中操作Excel文件——使用NPOI库
转载自:http://blog.csdn.net/dcrmg/article/details/52356236# 感谢-牧野- 实际C#项目中经常会涉及到需要对本地Excel文件进行操作,特别是一些包 ...
随机推荐
- 最好的PHP博客系统
1.Wordpress http://www.wordpress.org/ B2基础上开发而来,这是国内用户比较喜欢而且用户较多的一个php博客程序,缘由是因为Wordpress提供大量插件和模板,让 ...
- 解决Xilinx ISE在Win8下打开崩溃闪退的方法
http://www.121down.com/article/article_13651.html 坑爹的ISE对win8无法完美支持(包括目前最新的14.6),在使用64位ISE时点击OPEN之类的 ...
- 精心收集整理的SQL Server 2014/2012/2008/2005/2000简体中文企业版下载地址
经常在网上看到有同学费尽心思的找SQL server数据库各版本的下载地址,看到别人的求助贴就不自觉的想去帮助他们,但是一个一个去帮助又不太现实,毕竟个人精力有限,既然大家有需求,那么笔者就本着乐于分 ...
- datagrid在MVC中的运用06-固定连续列
本文主要体验datagrid的frozenColumns属性. □ frozenColumns效果: 在frozenColumns的列将保持不动,而其他列横向滚动. □ frozenColumns效果 ...
- 转 iOS开发debug跟release版本log屏蔽方法
简单介绍以下几个宏: ) __VA_ARGS__ 是一个可变参数的宏,这个可变参数的宏是新的C99规范中新增的,目前似乎只有gcc支持(VC6.0的编译器不支持).宏前面加上##的作用在于,当可变参数 ...
- 十四种Java开发工具点评
在计算机开发语言的历史中,从来没有哪种语言象Java那样受到如此众多厂商的支持,有如此多的开发工具,Java菜鸟们如初入大观园的刘姥姥,看花了眼,不知该何种选择.的确,这些工具各有所长,都没有绝对完美 ...
- 试用log4jdbc
近日发现一个好东东log4jdbc,他是一个JDBC驱动器,能够记录SQL日志和SQL执行时间等信息.log4jdbc使用SLF4J(Simple Logging Facade For Java)作为 ...
- python限制进程、子进程占用内存大小、CPU时间的方法:resource模块
内置模块:resource 在mac环境下功能会存在问题.linux下可以使用:但是for i in range(10000)的值必须是10000或者更大的数值才有用.没有搞清楚为什么 #/usr/b ...
- 【BZOJ】【1178】【APIO2009】convention会议中心
贪心 如果不考虑字典序的话,直接按右端点排序,能选就选,就可以算出ans…… 但是要算一个字典序最小的解就比较蛋疼了= = Orz了zyf的题解 就是按字典序从小到大依次枚举,在不改变答案的情况下,能 ...
- 【Gson】简介 文档 基本使用 示例
简介 new TypeToken<List<Person>>() {}.getType() 1 1 1 new TypeToken<List<Person> ...