ImageVerifierCode 换一换
格式:DOCX , 页数:10 ,大小:27.41KB ,
资源ID:11671833      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/11671833.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(ApachePOIHSSF和XSSF读写EXCEL总结.docx)为本站会员(b****5)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

ApachePOIHSSF和XSSF读写EXCEL总结.docx

1、ApachePOIHSSF和XSSF读写EXCEL总结Apache POI HSSF和XSSF读写EXCEL总结HSSF是指2007年以前的,XSSF是指2007年版本以上的这个还是比较好用的,这些总结来自Apache的官方向导的点点滴滴还有好多没有没有写的,详细的请参考http:/poi.apache.org/spreadsheet/quick-guide.html 还有LOG也比较好看Java代码public class SummaryHSSF public static void main(String args) throws IOException /创建Workbook对象(这一个

2、对象代表着对应的一个Excel文件)/HSSFWorkbook表示以xls为后缀名的文件Workbook wb = new HSSFWorkbook(); /获得CreationHelper对象,这个应该是一个帮助类CreationHelper helper = wb.getCreationHelper(); /创建Sheet并给名字(表示Excel的一个Sheet) Sheet sheet1 = wb.createSheet(HSSF_Sheet_1); Sheet sheet2 = wb.createSheet(HSSF_Sheet_2); /Row表示一行Cell表示一列Row row

3、= null; Cell cell = null; for(int i=0;i60;i=i+2) /获得这个sheet的第i行row = sheet1.createRow(i); /设置行长度自动/row.setHeight(short)500); row.setHeightInPoints(20); /row.setZeroHeight(true); for(int j=0;j25;j+) /设置每个sheet每一行的宽度,自动,根据需求自行确定sheet1.autoSizeColumn(j+1, true); /创建一个基本的样式CellStyle cellStyle = SummaryH

4、SSF.createStyleCell(wb); /获得这一行的每j列cell = row.createCell(j); if(j=0) /设置文字在单元格里面的位置cellStyle = SummaryHSSF.setCellStyleAlignment(cellStyle, CellStyle.ALIGN_CENTER, CellStyle.VERTICAL_CENTER); /先创建字体样式,并把这个样式加到单元格的字体里面cellStyle.setFont(createFonts(wb); /把这个样式加到单元格里面cell.setCellStyle(cellStyle); /给单元格

5、设值cell.setCellValue(true); else if(j=1) /设置文字在单元格里面的位置cellStyle = SummaryHSSF.setCellStyleAlignment(cellStyle, CellStyle.ALIGN_CENTER, CellStyle.VERTICAL_CENTER); /设置这个样式的格式(Format) cellStyle = SummaryHSSF.setCellFormat(helper,cellStyle, #,#0.0000); /先创建字体样式,并把这个样式加到单元格的字体里面cellStyle.setFont(createF

6、onts(wb); /把这个样式加到单元格里面cell.setCellStyle(cellStyle); /给单元格设值cell.setCellValue(new Double(2008.2008); else if(j=2) cellStyle = SummaryHSSF.setCellStyleAlignment(cellStyle, CellStyle.ALIGN_CENTER, CellStyle.VERTICAL_CENTER); cellStyle.setFont(createFonts(wb); cell.setCellStyle(cellStyle); cell.setCell

7、Value(helper.createRichTextString(RichString+i+j); else if(j=3) cellStyle = SummaryHSSF.setCellStyleAlignment(cellStyle, CellStyle.ALIGN_CENTER, CellStyle.VERTICAL_CENTER); cellStyle = SummaryHSSF.setCellFormat(helper,cellStyle, MM-yyyy-dd); cell.setCellStyle(cellStyle); cell.setCellValue(new Date()

8、; else if(j=24) cellStyle = SummaryHSSF.setCellStyleAlignment(cellStyle, CellStyle.ALIGN_CENTER, CellStyle.VERTICAL_CENTER); cellStyle.setFont(createFonts(wb); /设置公式cell.setCellFormula(SUM(E+(i+1)+:X+(i+1)+); else cellStyle = SummaryHSSF.setCellStyleAlignment(cellStyle, CellStyle.ALIGN_CENTER, CellS

9、tyle.VERTICAL_CENTER); cellStyle = SummaryHSSF.setFillBackgroundColors(cellStyle,IndexedColors.ORANGE.getIndex(),IndexedColors.ORANGE.getIndex(),CellStyle.SOLID_FOREGROUND); cell.setCellStyle(cellStyle); cell.setCellValue(1); /输出OutputStream os = new FileOutputStream(new File(c:/SummaryHSSF.xls); wb

10、.write(os); os.close(); /* * 边框* param wb * return */ public static CellStyle createStyleCell(Workbook wb) CellStyle cellStyle = wb.createCellStyle(); /设置一个单元格边框颜色cellStyle.setBorderBottom(CellStyle.BORDER_THIN); cellStyle.setBorderTop(CellStyle.BORDER_THIN); cellStyle.setBorderLeft(CellStyle.BORDER

11、_THIN); cellStyle.setBorderRight(CellStyle.BORDER_THIN); /设置一个单元格边框颜色cellStyle.setRightBorderColor(IndexedColors.BLACK.getIndex(); cellStyle.setLeftBorderColor(IndexedColors.BLACK.getIndex(); cellStyle.setBottomBorderColor(IndexedColors.BLACK.getIndex(); cellStyle.setTopBorderColor(IndexedColors.BLA

12、CK.getIndex(); return cellStyle; /* * 设置文字在单元格里面的位置* CellStyle.ALIGN_CENTER * CellStyle.VERTICAL_CENTER * param cellStyle * param halign * param valign * return */ public static CellStyle setCellStyleAlignment(CellStyle cellStyle,short halign,short valign) /设置上下cellStyle.setAlignment(CellStyle.ALIGN

13、_CENTER); /设置左右cellStyle.setVerticalAlignment(CellStyle.VERTICAL_CENTER); return cellStyle; /* * 格式化单元格* 如#,#0.00,m/d/yy去HSSFDataFormat或XSSFDataFormat里面找* param cellStyle * param fmt * return */ public static CellStyle setCellFormat(CreationHelper helper,CellStyle cellStyle,String fmt) /还可以用其它方法创建fo

14、rmat cellStyle.setDataFormat(helper.createDataFormat().getFormat(fmt); return cellStyle; /* * 前景和背景填充的着色* param cellStyle * param bg IndexedColors.ORANGE.getIndex(); * param fg IndexedColors.ORANGE.getIndex(); * param fp CellStyle.SOLID_FOREGROUND * return */ public static CellStyle setFillBackgroun

15、dColors(CellStyle cellStyle,short bg,short fg,short fp) /cellStyle.setFillBackgroundColor(bg); cellStyle.setFillForegroundColor(fg); cellStyle.setFillPattern(fp); return cellStyle; /* * 设置字体* param wb * return */ public static Font createFonts(Workbook wb) /创建Font对象Font font = wb.createFont(); /设置字体

16、font.setFontName(黑体); /着色font.setColor(HSSFColor.BLUE.index); /斜体font.setItalic(true); /字体大小font.setFontHeight(short)300); return font; public class SummaryHSSF public static void main(String args) throws IOException /创建Workbook对象(这一个对象代表着对应的一个Excel文件)/HSSFWorkbook表示以xls为后缀名的文件Workbook wb = new HSSF

17、Workbook();/获得CreationHelper对象,这个应该是一个帮助类CreationHelper helper = wb.getCreationHelper();/创建Sheet并给名字(表示Excel的一个Sheet)Sheet sheet1 = wb.createSheet(HSSF_Sheet_1); Sheet sheet2 = wb.createSheet(HSSF_Sheet_2);/Row表示一行Cell表示一列Row row = null;Cell cell = null;for(int i=0;i60;i=i+2)/获得这个sheet的第i行row = shee

18、t1.createRow(i);/设置行长度自动/row.setHeight(short)500);row.setHeightInPoints(20);/row.setZeroHeight(true);for(int j=0;j25;j+) /设置每个sheet每一行的宽度,自动,根据需求自行确定sheet1.autoSizeColumn(j+1, true);/创建一个基本的样式CellStyle cellStyle = SummaryHSSF.createStyleCell(wb);/获得这一行的每j列cell = row.createCell(j);if(j=0)/设置文字在单元格里面的

19、位置cellStyle = SummaryHSSF.setCellStyleAlignment(cellStyle, CellStyle.ALIGN_CENTER, CellStyle.VERTICAL_CENTER);/先创建字体样式,并把这个样式加到单元格的字体里面cellStyle.setFont(createFonts(wb);/把这个样式加到单元格里面cell.setCellStyle(cellStyle); /给单元格设值cell.setCellValue(true);else if(j=1)/设置文字在单元格里面的位置cellStyle = SummaryHSSF.setCell

20、StyleAlignment(cellStyle, CellStyle.ALIGN_CENTER, CellStyle.VERTICAL_CENTER);/设置这个样式的格式(Format)cellStyle = SummaryHSSF.setCellFormat(helper,cellStyle, #,#0.0000); /先创建字体样式,并把这个样式加到单元格的字体里面cellStyle.setFont(createFonts(wb);/把这个样式加到单元格里面cell.setCellStyle(cellStyle);/给单元格设值cell.setCellValue(new Double(

21、2008.2008);else if(j=2)cellStyle = SummaryHSSF.setCellStyleAlignment(cellStyle, CellStyle.ALIGN_CENTER, CellStyle.VERTICAL_CENTER); cellStyle.setFont(createFonts(wb);cell.setCellStyle(cellStyle);cell.setCellValue(helper.createRichTextString(RichString+i+j); else if(j=3)cellStyle = SummaryHSSF.setCel

22、lStyleAlignment(cellStyle, CellStyle.ALIGN_CENTER, CellStyle.VERTICAL_CENTER);cellStyle = SummaryHSSF.setCellFormat(helper,cellStyle, MM-yyyy-dd);cell.setCellStyle(cellStyle);cell.setCellValue(new Date();else if(j=24)cellStyle = SummaryHSSF.setCellStyleAlignment(cellStyle, CellStyle.ALIGN_CENTER, Ce

23、llStyle.VERTICAL_CENTER);cellStyle.setFont(createFonts(wb);/设置公式cell.setCellFormula(SUM(E+(i+1)+:X+(i+1)+); else cellStyle = SummaryHSSF.setCellStyleAlignment(cellStyle, CellStyle.ALIGN_CENTER, CellStyle.VERTICAL_CENTER);cellStyle = SummaryHSSF.setFillBackgroundColors(cellStyle,IndexedColors.ORANGE.

24、getIndex(),IndexedColors.ORANGE.getIndex(),CellStyle.SOLID_FOREGROUND);cell.setCellStyle(cellStyle);cell.setCellValue(1);/输出OutputStream os = new FileOutputStream(new File(c:/SummaryHSSF.xls);wb.write(os);os.close(); /* 边框* param wb* return*/public static CellStyle createStyleCell(Workbook wb)CellSt

25、yle cellStyle = wb.createCellStyle();/设置一个单元格边框颜色cellStyle.setBorderBottom(CellStyle.BORDER_THIN);cellStyle.setBorderTop(CellStyle.BORDER_THIN);cellStyle.setBorderLeft(CellStyle.BORDER_THIN);cellStyle.setBorderRight(CellStyle.BORDER_THIN);/设置一个单元格边框颜色cellStyle.setRightBorderColor(IndexedColors.BLACK

26、.getIndex();cellStyle.setLeftBorderColor(IndexedColors.BLACK.getIndex();cellStyle.setBottomBorderColor(IndexedColors.BLACK.getIndex();cellStyle.setTopBorderColor(IndexedColors.BLACK.getIndex(); return cellStyle;/* 设置文字在单元格里面的位置* CellStyle.ALIGN_CENTER* CellStyle.VERTICAL_CENTER* param cellStyle* par

27、am halign* param valign* return*/public static CellStyle setCellStyleAlignment(CellStyle cellStyle,short halign,short valign)/设置上下cellStyle.setAlignment(CellStyle.ALIGN_CENTER);/设置左右cellStyle.setVerticalAlignment(CellStyle.VERTICAL_CENTER);return cellStyle;/* 格式化单元格* 如#,#0.00,m/d/yy去HSSFDataFormat或X

28、SSFDataFormat里面找* param cellStyle* param fmt* return*/public static CellStyle setCellFormat(CreationHelper helper,CellStyle cellStyle,String fmt)/还可以用其它方法创建formatcellStyle.setDataFormat(helper.createDataFormat().getFormat(fmt);return cellStyle;/* 前景和背景填充的着色* param cellStyle* param bg IndexedColors.O

29、RANGE.getIndex();* param fg IndexedColors.ORANGE.getIndex();* param fp CellStyle.SOLID_FOREGROUND* return*/public static CellStyle setFillBackgroundColors(CellStyle cellStyle,short bg,short fg,short fp)/cellStyle.setFillBackgroundColor(bg);cellStyle.setFillForegroundColor(fg);cellStyle.setFillPatter

30、n(fp);return cellStyle;/* 设置字体* param wb* return*/public static Font createFonts(Workbook wb)/创建Font对象Font font = wb.createFont();/设置字体font.setFontName(黑体);/着色font.setColor(HSSFColor.BLUE.index);/斜体font.setItalic(true);/字体大小font.setFontHeight(short)300);return font;读取Excel文件Java代码public class ReadExcel public static void main(String args) throws Exce

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1