提供3000多款全球软件/控件产品
针对软件研发的各个阶段提供专业培训与技术咨询
根据客户需求提供定制化的软件开发服务
全球知名设计软件,显著提升设计质量
打造以经营为中心,实现生产过程透明化管理
帮助企业合理产能分配,提高资源利用率
快速打造数字化生产线,实现全流程追溯
生产过程精准追溯,满足企业合规要求
以六西格玛为理论基础,实现产品质量全数字化管理
通过大屏电子看板,实现车间透明化管理
对设备进行全生命周期管理,提高设备综合利用率
实现设备数据的实时采集与监控
利用数字化技术提升油气勘探的效率和成功率
钻井计划优化、实时监控和风险评估
提供业务洞察与决策支持实现数据驱动决策
原创|其它|编辑:郝浩|2012-10-11 09:53:41.000|阅读 634 次
概述:JExcel是java导出Excel的一个开源工具包。有的时候需要将数据导到Excel文件中以便观看。本文介绍了如何使用JExcel导出Excel文件的具体做法。
# 慧都年终大促·界面/图表报表/文档/IDE等千款热门软控件火热促销中 >>
JExcel是java导出Excel的一个开源工具包。有的时候需要将数据导到Excel文件中以便观看。
需要上网下载jxl.jar,下载地址://pclwef.cn/zh-CN/product/1148/download.aspx
核心代码如下:
package test; import java.io.File; import java.io.IOException; import java.util.Calendar; import java.util.Date; import jxl.Cell; import jxl.CellType; import jxl.DateCell; import jxl.LabelCell; import jxl.NumberCell; import jxl.Sheet; import jxl.Workbook; import jxl.read.biff.BiffException; import jxl.write.DateFormat; import jxl.write.DateTime; import jxl.write.Label; import jxl.write.Number; import jxl.write.NumberFormat; import jxl.write.NumberFormats; import jxl.write.WritableCell; 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 TutorialMain { /** * WritingSpreadSheet */ public void WritingSpreadSheet() { try { //创建一个WorkBook,即一个Excel文件,文件目录为param0 WritableWorkbook workbook = Workbook.createWorkbook(new File("c:\\output.xls")); //创建一个Sheet,即表单,名字为param0;位置为param1 WritableSheet sheet = workbook.createSheet("First Sheet Name", 0); sheet.setColumnView(0, 30); // 设置列的宽度 sheet.setColumnView(1, 30); // 设置列的宽度 sheet.setColumnView(2, 30); // 设置列的宽度 sheet.setRowView(6, 1000); // 设置行的高度 sheet.setRowView(4, 1000); // 设置行的高度 sheet.setRowView(5, 1000); // 设置行的高度 //创建一个Label,x坐标param0,y坐标param1,名字为param2 Label label = new Label(0, 2, "A label record"); //将该Label sheet.addCell(label); //创建一个Number,x坐标param0,y坐标param1,数值为param2 Number number = new Number(3, 4, 3.1459); sheet.addCell(number); /** * 格式化信息 */ // Create a cell format for Arial 10 point font WritableFont arial10font = new WritableFont(WritableFont.ARIAL, 10); WritableCellFormat arial10format = new WritableCellFormat (arial10font); // Create the label, specifying content and format Label label2 = new Label(1,0, "Arial 10 point label", arial10format); sheet.addCell(label2); Label label3 = new Label(2, 0, "Another Arial 10 point label", arial10format); sheet.addCell(label3); // Create a cell format for Times 16, bold and italic WritableFont times16font = new WritableFont(WritableFont.TIMES, 16, WritableFont.BOLD, true); WritableCellFormat times16format = new WritableCellFormat (times16font); // Create the label, specifying content and format Label label4 = new Label(3,0, "Times 16 bold italic label", times16format); times16format.setBackground(jxl.format.Colour.BLUE); times16format.setAlignment(jxl.format.Alignment.CENTRE); sheet.addCell(label4); /** * 格式化数值 */ WritableCellFormat integerFormat = new WritableCellFormat (NumberFormats.INTEGER); Number number2 = new Number(0, 4, 3.141519, integerFormat); sheet.addCell(number2); WritableCellFormat floatFormat = new WritableCellFormat (NumberFormats.FLOAT); Number number3 = new Number(1, 4, 3.141519, floatFormat); sheet.addCell(number3); NumberFormat fivedps = new NumberFormat("#.#####"); WritableCellFormat fivedpsFormat = new WritableCellFormat(fivedps); Number number4 = new Number(2, 4, 3.141519, fivedpsFormat); sheet.addCell(number4); WritableCellFormat fivedpsFontFormat = new WritableCellFormat (times16font, fivedps); Number number5 = new Number(3, 4, 3.141519, fivedpsFontFormat); sheet.addCell(number5); /** * Formatting Dates */ // Get the current date and time from the Calendar object Date now = Calendar.getInstance().getTime(); DateFormat customDateFormat = new DateFormat ("dd MM yyyy hh:mm:ss"); WritableCellFormat dateFormat = new WritableCellFormat (customDateFormat); DateTime dateCell = new DateTime(0, 6, now, dateFormat); sheet.addCell(dateCell); /** * 合并单元格 */ WritableSheet sheet1 = workbook.createSheet("First Sheet", 1); sheet1.mergeCells(0, 0, 1, 1); // All sheets and cells added. Now write out the workbook workbook.write(); workbook.close(); System.out.println("创建成功.."); } catch (IOException e) { // TODO Auto-generated catch block System.out.println("创建失败.."); e.printStackTrace(); } catch (RowsExceededException e) { // sheet.addCell Exception System.out.println("创建失败.."); e.printStackTrace(); } catch (WriteException e) { System.out.println("创建失败.."); // TODO Auto-generated catch block e.printStackTrace(); } } /** * * @param filePath 文件路径 * @param fileName 文件名 */ public void ReadingSpreadSheets(String filePath,String fileName){ try { Workbook workbook = Workbook.getWorkbook(new File(filePath + "\\" + fileName)); Sheet sheet = workbook.getSheet(0); Cell a1 = sheet.getCell(0,0); Cell b2 = sheet.getCell(1,1); Cell c2 = sheet.getCell(2,1); String stringa1 = a1.getContents(); String stringb2 = b2.getContents(); String stringc2 = c2.getContents(); double numberb2 = 0; Date datec2 = null; if (a1.getType() == CellType.LABEL) { LabelCell lc = (LabelCell) a1; stringa1 = lc.getString(); } if (b2.getType() == CellType.NUMBER) { NumberCell nc = (NumberCell) b2; numberb2 = nc.getValue(); } if (c2.getType() == CellType.DATE) { DateCell dc = (DateCell) c2; datec2 = dc.getDate(); } // 其他处理 // ... // 结束后关闭文件并释放内存 workbook.close(); System.out.println("读取成功.."); } catch (BiffException e) { // TODO Auto-generated catch block System.out.println("读取失败.."); e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block System.out.println("读取失败.."); e.printStackTrace(); } } public void copyWorkBook(String oldFilePath,String oldFileName,String newFilePath,String newFileName ){ try { Workbook workbook = Workbook.getWorkbook(new File( oldFilePath + "\\" + oldFileName )); WritableWorkbook copy = Workbook.createWorkbook(new File( newFilePath +"\\" +newFileName ), workbook); //进行一些操作 WritableSheet sheet = copy.getSheet(1); WritableCell cell0 = sheet.getWritableCell(1, 2); if (cell0.getType() == CellType.LABEL) { Label l0 = (Label) cell0; l0.setString("modified cell"); } WritableSheet sheet2 = copy.getSheet(1); WritableCell cell = sheet2.getWritableCell(2, 4); NumberFormat fivedps = new NumberFormat("#.#####"); WritableCellFormat cellFormat = new WritableCellFormat(fivedps); cell.setCellFormat(cellFormat); Label label = new Label(0, 2, "New label record"); sheet2.addCell(label); Number number = new Number(3, 4, 3.1459); sheet2.addCell(number); // 所有的都完成,关闭资源 workbook.close(); copy.write(); copy.close(); } catch (BiffException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (IOException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (RowsExceededException e) { // TODO Auto-generated catch block e.printStackTrace(); } catch (WriteException e) { // TODO Auto-generated catch block e.printStackTrace(); } } public static void main(String[] args){ TutorialMain main = new TutorialMain(); main.WritingSpreadSheet(); } }
本站文章除注明转载外,均为本站原创或翻译。欢迎任何形式的转载,但请务必注明出处、不得修改原文相关链接,如果存在内容上的异议请邮件反馈至chenjj@pclwef.cn
文章转载自:kenchow126的专栏面对“数字中国”建设和中国制造2025战略实施的机遇期,中车信息公司紧跟时代的步伐,以“集约化、专业化、标准化、精益化、一体化、平台化”为工作目标,大力推进信息服务、工业软件等核心产品及业务的发展。在慧都3D解决方案的实施下,清软英泰建成了多模型来源的综合轻量化显示平台、实现文件不失真的百倍压缩比、针对模型中的大模型文件,在展示平台上进行流畅展示,提升工作效率,优化了使用体验。
本站的模型资源均免费下载,登录后即可下载。模型仅供学习交流,勿做商业用途。
本站的模型资源均免费下载,登录后即可下载。模型仅供学习交流,勿做商业用途。
本站的模型资源均免费下载,登录后即可下载。模型仅供学习交流,勿做商业用途。
服务电话
重庆/ 023-68661681
华东/ 13452821722
华南/ 18100878085
华北/ 17347785263
客户支持
技术支持咨询服务
服务热线:400-700-1020
邮箱:sales@pclwef.cn
关注我们
地址 : 重庆市九龙坡区火炬大道69号6幢