java对execl的导入、导出操作-- POI / JXL
2010-01-14 10:31
260 查看
现阶段JAVA操作Excel的JAR主要有apache
的 POI及
JXL.
因为现在的eclipse操作excel用的插件为jxl,所以在项目中就使用了jxl.
想想两者都差不了太多.
此简单系列为两个部分,一是API系列(再官网http://www.andykhan.com/jexcelapi/download.html可以直接下载),
另一部分则是应用系列.
在这里先找了个例子给大家,
》jxl的一些总结
**********************************************************************************************
要往xls文件里面写入数据的时候需要注意的是第一要新建一个xls文件
OutputStream os=new FileOutputStream("c://excel2.xls");
再建完这个文件的时候再建立工作文件
jxl.write.WritableWorkbook wwb = Workbook.createWorkbook(new File(os));
如果这个文件已经存在,那么我们可以在这个文件里面加入一个sheet为了和以前的数据进行分开;
jxl.write.WritableSheet ws = wwb.createSheet("Test Sheet 1", 0);
在createSheet方法里前面的参数是sheet名,后面是要操作的sheet号
接下来就可以往这个文件里面写入数据了
写入数据的时候注意的格式
(1)添加的字体样式
jxl.write.WritableFont wf = new
jxl.write.WritableFont(WritableFont.TIMES, 18, WritableFont.BOLD, true);
WritableFont()方法里参数说明:
这个方法算是一个容器,可以放进去好多属性
第一个: TIMES是字体大小,他写的是18
第二个: BOLD是判断是否为斜体,选择true时为斜体
第三个: ARIAL
第四个: UnderlineStyle.NO_UNDERLINE 下划线
第五个: jxl.format.Colour.RED 字体颜色是红色的
jxl.write.WritableCellFormat wcfF = new
jxl.write.WritableCellFormat(wf);
jxl.write.Label labelC = new jxl.write.Label(0, 0, "This is a Label cell",wcfF);
ws.addCell(labelC);
在Label()方法里面有三个参数
第一个是代表列数,
第二是代表行数,
第三个代表要写入的内容
第四个是可选项,是输入这个label里面的样式
然后通过写sheet的方法addCell()把内容写进sheet里面。
(2)添加带有formatting的Number对象
jxl.write.NumberFormat nf = new
jxl.write.NumberFormat("#.##");
(3)添加Number对象
(3.1)显示number对象数据的格式
jxl.write.NumberFormat nf = new
jxl.write.NumberFormat("#.##");
jxl.write.WritableCellFormat wcfN = new
jxl.write.WritableCellFormat(nf);
jxl.write.Number labelNF = new
jxl.write.Number(1, 1, 3.1415926, wcfN);
ws.addCell(labelNF);
Number()方法参数说明:
前两上表示输入的位置
第三个表示输入的内容
(4)添加Boolean对象
jxl.write.Boolean labelB = new
jxl.write.Boolean(0, 2, false);
ws.addCell(labelB);
(5)添加DateTime对象
jxl.write.DateTime labelDT = new
jxl.write.DateTime(0, 3, new java.util.Date());
ws.addCell(labelDT);
DateTime()方法的参数说明
前两个表示输入的位置
第三个表示输入的当前时间
(6)添加带有formatting的DateFormat对象
这个显示当前时间的所有信息,包括年月日小时分秒
jxl.write.DateFormat df = new
jxl.write.DateFormat("dd MM yyyy hh:mm:ss");
jxl.write.WritableC
4000
ellFormat wcfDF = new
jxl.write.WritableCellFormat(df);
jxl.write.DateTime labelDTF = new
jxl.write.DateTime(1, 3, new java.util.Date(), wcfDF);
ws.addCell(labelDTF);
(7)添加带有字体颜色Formatting的对象
jxl.write.WritableFont wfc = new
jxl.write.WritableFont(WritableFont.ARIAL, 10, WritableFont.NO_BOLD, false,UnderlineStyle.NO_UNDERLINE,
jxl.format.Colour.RED);
jxl.write.WritableCellFormat wcfFC = new
jxl.write.WritableCellFormat(wfc);
import="jxl.format.*
jxl.write.WritableFont wfc = new
jxl.write.WritableFont(WritableFont.ARIAL,20,WritableFont.BOLD,false,UnderlineStyle.NO_UNDERLINE,jxl.format.Colour.GREEN);
(8)设置单元格样式
jxl.write.WritableCellFormat wcfFC = new
jxl.write.WritableCellFormat(wfc);
wcfFC.setBackGround(jxl.format.Colour.RED);//设置单元格的颜色为红色
wcfFC = new jxl.write.Label(6,0,"i love china",wcfFC);
的 POI及
JXL.
因为现在的eclipse操作excel用的插件为jxl,所以在项目中就使用了jxl.
想想两者都差不了太多.
此简单系列为两个部分,一是API系列(再官网http://www.andykhan.com/jexcelapi/download.html可以直接下载),
另一部分则是应用系列.
在这里先找了个例子给大家,
//程序说明: 要导入jxl.jar到Classpath中。 import jxl.*; import java.io.*; import jxl.write.*; /** * <p>java读取Excel表格,拷贴心、更新Excel工作薄 </p> */ public class Test1 { public static void main(String[] args) { jxl.Workbook rwb = null; try{ //构建Workbook对象 只读Workbook对象 //直接从本地文件创建Workbook //从输入流创建Workbook InputStream is = new FileInputStream("D://Book1.xls"); rwb = Workbook.getWorkbook(is); //Sheet(术语:工作表)就是Excel表格左下角的Sheet1,Sheet2,Sheet3但在程序中 //Sheet的下标是从0开始的 //获取第一张Sheet表 Sheet rs = rwb.getSheet(0); //获取Sheet表中所包含的总列数 int rsColumns = rs.getColumns(); //获取Sheet表中所包含的总行数 int rsRows = rs.getRows(); //获取指这下单元格的对象引用 for(int i=0;i<rsRows;i++){ for(int j=0;j<rsColumns;j++){ Cell cell = rs.getCell(j,i); System.out.print(cell.getContents()+" "); } System.out.println(); } //利用已经创建的Excel工作薄创建新的可写入的Excel工作薄 jxl.write.WritableWorkbook wwb = Workbook.createWorkbook(new File("D://Book2.xls"),rwb); //读取第一张工作表 jxl.write.WritableSheet ws = wwb.getSheet(0); //获取第一个单元格对象 jxl.write.WritableCell wc = ws.getWritableCell(0, 0); //决断单元格的类型,做出相应的转化 if (wc.getType() == CellType.LABEL) { Label l = (Label) wc; l.setString("The value has been modified."); } //写入Excel对象 wwb.write(); wwb.close(); }catch(Exception e){ e.printStackTrace(); } finally{ //操作完成时,关闭对象,翻译占用的内存空间 rwb.close(); } } }
》jxl的一些总结
**********************************************************************************************
要往xls文件里面写入数据的时候需要注意的是第一要新建一个xls文件
OutputStream os=new FileOutputStream("c://excel2.xls");
再建完这个文件的时候再建立工作文件
jxl.write.WritableWorkbook wwb = Workbook.createWorkbook(new File(os));
如果这个文件已经存在,那么我们可以在这个文件里面加入一个sheet为了和以前的数据进行分开;
jxl.write.WritableSheet ws = wwb.createSheet("Test Sheet 1", 0);
在createSheet方法里前面的参数是sheet名,后面是要操作的sheet号
接下来就可以往这个文件里面写入数据了
写入数据的时候注意的格式
(1)添加的字体样式
jxl.write.WritableFont wf = new
jxl.write.WritableFont(WritableFont.TIMES, 18, WritableFont.BOLD, true);
WritableFont()方法里参数说明:
这个方法算是一个容器,可以放进去好多属性
第一个: TIMES是字体大小,他写的是18
第二个: BOLD是判断是否为斜体,选择true时为斜体
第三个: ARIAL
第四个: UnderlineStyle.NO_UNDERLINE 下划线
第五个: jxl.format.Colour.RED 字体颜色是红色的
jxl.write.WritableCellFormat wcfF = new
jxl.write.WritableCellFormat(wf);
jxl.write.Label labelC = new jxl.write.Label(0, 0, "This is a Label cell",wcfF);
ws.addCell(labelC);
在Label()方法里面有三个参数
第一个是代表列数,
第二是代表行数,
第三个代表要写入的内容
第四个是可选项,是输入这个label里面的样式
然后通过写sheet的方法addCell()把内容写进sheet里面。
(2)添加带有formatting的Number对象
jxl.write.NumberFormat nf = new
jxl.write.NumberFormat("#.##");
(3)添加Number对象
(3.1)显示number对象数据的格式
jxl.write.NumberFormat nf = new
jxl.write.NumberFormat("#.##");
jxl.write.WritableCellFormat wcfN = new
jxl.write.WritableCellFormat(nf);
jxl.write.Number labelNF = new
jxl.write.Number(1, 1, 3.1415926, wcfN);
ws.addCell(labelNF);
Number()方法参数说明:
前两上表示输入的位置
第三个表示输入的内容
(4)添加Boolean对象
jxl.write.Boolean labelB = new
jxl.write.Boolean(0, 2, false);
ws.addCell(labelB);
(5)添加DateTime对象
jxl.write.DateTime labelDT = new
jxl.write.DateTime(0, 3, new java.util.Date());
ws.addCell(labelDT);
DateTime()方法的参数说明
前两个表示输入的位置
第三个表示输入的当前时间
(6)添加带有formatting的DateFormat对象
这个显示当前时间的所有信息,包括年月日小时分秒
jxl.write.DateFormat df = new
jxl.write.DateFormat("dd MM yyyy hh:mm:ss");
jxl.write.WritableC
4000
ellFormat wcfDF = new
jxl.write.WritableCellFormat(df);
jxl.write.DateTime labelDTF = new
jxl.write.DateTime(1, 3, new java.util.Date(), wcfDF);
ws.addCell(labelDTF);
(7)添加带有字体颜色Formatting的对象
jxl.write.WritableFont wfc = new
jxl.write.WritableFont(WritableFont.ARIAL, 10, WritableFont.NO_BOLD, false,UnderlineStyle.NO_UNDERLINE,
jxl.format.Colour.RED);
jxl.write.WritableCellFormat wcfFC = new
jxl.write.WritableCellFormat(wfc);
import="jxl.format.*
jxl.write.WritableFont wfc = new
jxl.write.WritableFont(WritableFont.ARIAL,20,WritableFont.BOLD,false,UnderlineStyle.NO_UNDERLINE,jxl.format.Colour.GREEN);
(8)设置单元格样式
jxl.write.WritableCellFormat wcfFC = new
jxl.write.WritableCellFormat(wfc);
wcfFC.setBackGround(jxl.format.Colour.RED);//设置单元格的颜色为红色
wcfFC = new jxl.write.Label(6,0,"i love china",wcfFC);
相关文章推荐
- java对execl的导入、导出操作-- POI / JXL .
- Java程序员从笨鸟到菜鸟之(一百零五)java操作office和pdf文件(三)利用jxl实现数据导出excel报表以及与POI的区别
- java使用POI操作excel文件,实现批量导出,和导入
- 【小白做项目Java】——POI导入和导出 execl文件
- JavaWEB--POI之EXCEL操作、优化、封装详解系列(二)--导入导出helloworld(对比JXL库)
- Java程序员从笨鸟到菜鸟之(一百零五)java操作office和pdf文件(三)利用jxl实现数据导出excel报表以及与POI的区别
- java excel导入和导出(poi,jxl)
- java导入导出excel操作(jxl)
- java导入导出excel操作(jxl)
- java利用poi对excel进行操作可导入导出
- java之poi操作excel-批量导入导出
- java使用jxl工具导入导出excel操作
- java导入导出excel操作(jxl)jxl.jar 包
- java操作excel进行导入导出 jxl
- java导入导出excel操作(jxl)
- java导入导出excel操作(jxl)
- java jxl操作excel进行导入导出
- java导入导出excel操作(jxl)
- java导入导出excel操作(jxl)
- 使用POI操作EXECL做数据的导入与导出