`

Java 解析 Excel

    博客分类:
  • Java
阅读更多

/*读 */

import java.io.*; 

import jxl.*; 

import jxl.write.*; 

import jxl.format.*; 

 

class Aa{ 

public static void main(String args[]) { 

 

try{ 

 

Workbook workbook = null; 

 

try { 

    workbook = Workbook.getWorkbook(new File("d:\\a.xls")); 

} catch (Exception e) { 

    throw new Exception("file to import not found!"); 

 

Sheet sheet = workbook.getSheet(0); 

Cell cell = null; 

 

int columnCount=3; 

int rowCount=sheet.getRows(); 

for (int i = 0; i <rowCount; i++) { 

    for (int j = 0; j <columnCount; j++) { 

        //注意,这里的两个参数,第一个是表示列的,第二才表示行 

        cell=sheet.getCell(j, i); 

        //要根据单元格的类型分别做处理,否则格式化过的内容可能会不正确 

        if(cell.getType()==CellType.NUMBER){ 

            System.out.print(((NumberCell)cell).getValue()); 

        } 

        else if(cell.getType()==CellType.DATE){ 

            System.out.print(((DateCell)cell).getDate()); 

        } 

        else{ 

            System.out.print(cell.getContents()); 

        } 

        

        //System.out.print(cell.getContents()); 

        System.out.print("\t"); 

    } 

    System.out.print("\n"); 

//关闭它,否则会有内存泄露 

workbook.close(); 

}catch(Exception e){ } 

 

 

/*写 */

import java.io.*; 

import jxl.*; 

import jxl.write.*; 

import jxl.format.*; 

 

class Aa{ 

public static void main(String args[]) { 

 

try{ 

 

File tempFile=new File("d:" + java.io.File.separator + "output00.xls"); 

System.out.println( "d:" + java.io.File.separator + "output00.xls" ); 

 

WritableWorkbook workbook = Workbook.createWorkbook(tempFile); 

WritableSheet sheet = workbook.createSheet("TestCreateExcel", 0); 

 

//一些临时变量,用于写到excel中 

Label l=null; 

jxl.write.Number n=null; 

jxl.write.DateTime d=null; 

 

//预定义的一些字体和格式,同一个Excel中最好不要有太多格式 

WritableFont headerFont = new WritableFont(WritableFont.ARIAL, 12, WritableFont.BOLD, false, UnderlineStyle.NO_UNDERLINE, jxl.format.Colour.BLUE); 

WritableCellFormat headerFormat = new WritableCellFormat (headerFont); 

 

WritableFont titleFont = new WritableFont(WritableFont.ARIAL, 10, WritableFont.NO_BOLD, false, UnderlineStyle.NO_UNDERLINE, jxl.format.Colour.RED); 

WritableCellFormat titleFormat = new WritableCellFormat (titleFont); 

 

WritableFont detFont = new WritableFont(WritableFont.ARIAL, 10, WritableFont.NO_BOLD, false, UnderlineStyle.NO_UNDERLINE, jxl.format.Colour.BLACK); 

WritableCellFormat detFormat = new WritableCellFormat (detFont); 

 

NumberFormat nf=new NumberFormat("0.00000");  //用于Number的格式 

WritableCellFormat priceFormat = new WritableCellFormat (detFont, nf); 

 

DateFormat df=new DateFormat("yyyy-MM-dd");//用于日期的 

WritableCellFormat dateFormat = new WritableCellFormat (detFont, df); 

 

//剩下的事情,就是用上面的内容和格式创建一些单元格,再加到sheet中 

l=new Label(0, 0, "用于测试的Excel文件", headerFormat); 

sheet.addCell(l); 

 

//add Title 

int column=0; 

l=new Label(column++, 2, "标题", titleFormat); 

sheet.addCell(l); 

l=new Label(column++, 2, "日期", titleFormat); 

sheet.addCell(l); 

l=new Label(column++, 2, "货币", titleFormat); 

sheet.addCell(l); 

l=new Label(column++, 2, "价格", titleFormat); 

sheet.addCell(l); 

 

//add detail 

int i=0; 

column=0; 

l=new Label(column++, i+3, "标题 "+i, detFormat); 

sheet.addCell(l); 

d=new DateTime(column++, i+3, new java.util.Date(), dateFormat); 

sheet.addCell(d); 

l=new Label(column++, i+3, "CNY", detFormat); 

sheet.addCell(l); 

n=new jxl.write.Number(column++, i+3, 5.678, priceFormat); 

sheet.addCell(n); 

 

i++; 

column=0; 

l=new Label(column++, i+3, "标题 "+i, detFormat); 

sheet.addCell(l); 

d=new DateTime(column++, i+3, new java.util.Date(), dateFormat); 

sheet.addCell(d); 

l=new Label(column++, i+3, "SGD", detFormat); 

sheet.addCell(l); 

n=new jxl.write.Number(column++, i+3, 98832, priceFormat); 

sheet.addCell(n); 

 

//设置列的宽度 

column=0; 

sheet.setColumnView(column++, 20); 

sheet.setColumnView(column++, 20); 

sheet.setColumnView(column++, 10); 

sheet.setColumnView(column++, 20); 

 

workbook.write(); 

workbook.close(); 

}catch(Exception e){ 

 

 

  

另一个例子

public ArrayList parseVideo() {   

 

    try {   

            Workbook book = Workbook.getWorkbook(new File("ua.xls"));   

            Sheet se = book.getSheet(1);得到第1个sheet

            int rownum = se.getRows();   //得到总行数   

            // Cell ce = null;   

            // StringBuffer su = new StringBuffer();   

            ArrayList list = new ArrayList();   

            DBManager db = new DBManager();   

            conn = db.getConnection();   

            stmt = conn.createStatement();   

            for (int i = 1; i < rownum; i++) {   

                Mobilemeter rea = new Mobilemeter();   

                rea.setMobileID(se.getCell(0, i).getContents());  //第i行的第1列   

                rea.setModel(se.getCell(3, i).getContents());//第i行的第4列   

                rea.setShortUA(se.getCell(11, i).getContents());   

                String arr = se.getCell(8, i).getContents();   

                String ayy = arr.replaceAll("\\u002A", "x");   

                rea.setPicFormat(se.getCell(8, i).getContents());   

                rea.setResourceRing(se.getCell(9, i).getContents());   

                rea.setRingFormat(se.getCell(10, i).getContents());   

                list.add(rea);   

            }   

            book.close();   

            return list;   

        } catch (Exception e) {   

            e.printStackTrace();   

            return null;   

        }   

  

    }  

分享到:
评论

相关推荐

    java 解析Excel 并判断解析的数据类型__Eclipse工程

    在Java编程环境中,解析Excel文件是一项常见的任务,特别是在数据处理、数据分析或自动化测试等领域。Eclipse作为Java开发的主流IDE,提供了丰富的工具和支持来完成这项工作。本项目名为"java 解析Excel 并判断解析...

    java解析excel并做数据有效性校验

    1. **Java解析Excel库** 在Java中,有多个库可以用来解析Excel文件,如Apache POI、JExcelAPI、SimpleExcel等。Apache POI是目前最广泛使用的库,支持`.xls`和`.xlsx`格式,功能强大且稳定。我们将主要讨论使用...

    java解析excel表格

    Java解析Excel表格是一种常见的任务,尤其在数据处理和分析领域。Java提供了多种库来支持Excel文件的读取和写入,比如Apache POI、JExcelAPI、OpenCSV等。这里我们将重点讨论Apache POI,这是一个广泛使用的开源库,...

    java解析excel

    Java解析Excel文件是一个多方面的话题,涉及文件格式、API选择、数据类型处理、高级功能的使用以及性能优化。Apache POI作为主流的工具,提供了全面的功能来满足各种需求。通过理解并熟练运用这些知识,你可以有效地...

    java解析Excel

    java解析Excel

    java解析Excel文件并把数据存入数据库和导出数据为excel文件SpringBoot代码示例

    1、java解析读取excel文件中的数据,并写入数据库。 2、java读取数据库数据,并导出为excel文件。 3、README.md中有详细的操作步骤示例。 使用说明: 1. 先使用postman导入:other/excel相关.postman_collection....

    java解析Excel文件jar包

    Java解析Excel文件主要依赖于Apache POI库,这是一个开源项目,专门为处理Microsoft Office格式的文件而设计。在Java中,Apache POI提供了丰富的API,使得开发者可以方便地读取、写入Excel(.xls和.xlsx)文件。在这...

    Java解析Excel的opi.jar包

    Java解析Excel是一项常见的任务,特别是在数据处理和报告生成的场景中。`poi.jar`库是Apache POI项目的一部分,这是一个开源的Java API,专门用于处理Microsoft Office格式的文件,包括Excel(.xls和.xlsx)。在Java...

    java解析excel并导入数据库的web工程

    回答csdn论坛:Java语言下excel导入到mysql数据库表...

    JAVA 解析 Excel 工具 Java 解析、生成 Excel 比较有名的框架.rar

    JAVA解析Excel工具EasyExcel Java解析、生成Excel比较有名的框架有Apache poi、jxl。但他们都存在一个严重的问题就是非常的耗内存&#xff0c;poi有一套SAX模式的API可以一定程度的解决一些内存溢出的问题&#xff0c;但...

    java解析excel2007源码

    Java解析Excel 2007源码主要涉及的是对Microsoft Office Open XML (OOXML) 格式的处理,这种格式主要用于xlsx文件。OOXML是Excel 2007及更高版本默认使用的存储格式,它以XML为基础,将数据以更结构化的方式存储在多...

    java解析excel源码

    Java解析Excel源码主要涉及到的是使用Java处理Microsoft Excel文件的技术,这一技术在数据处理、数据分析以及报表生成等场景中非常常见。在这个过程中,我们通常会使用Apache POI库,这是一个强大的开源API,专为...

    java 解析 excel 程序

    Java使用poi的jar包解析excel,里面有个ExcelUtil工具类, 非常实用,里面有main函数可以测试,导入到eclipse里面就可以运行, 有测试excel文件,需要的jar都在里面, 导入就可以运行.

    java解析excel文件源码

    Java解析Excel文件是Java开发中常见的任务,尤其在数据处理、报表生成或数据分析等领域。Excel文件通常使用两种主要格式:老式的`.xls`(BIFF8格式)和较新的`.xlsx`(OOXML格式)。本示例关注的是`.xls`格式,因为...

    java解析EXCEL文件实例

    总的来说,Java解析Excel文件的核心在于理解Apache POI库提供的各种类和方法,以及如何利用它们来处理Excel文件中的数据。通过这个实例,你可以开始构建自己的Excel处理功能,无论是简单的数据读取还是复杂的业务...

    文件上传,java解析excel和csv 转javabean

    本篇文章将深入讲解如何使用Java解析Excel(包括Excel 2003和2007格式)和CSV文件,并将解析的数据映射到Java Bean,以便后续的数据处理和存储。 首先,我们需要了解如何在Java中处理文件上传。在Servlet环境中,...

    java 解析excel jar包

    在Java编程环境中,解析Excel文件是一项常见的任务,特别是在数据处理和数据分析领域。针对Excel 2003和2007格式,Java提供了多种库来实现这一功能,其中Apache POI是一个广泛使用的开源库。标题提到的"java 解析...

    POI java解析EXCEL

    【标题】:POI Java解析EXCEL 在Java开发中,处理Excel文件是常见的需求,Apache POI项目提供了一个强大的工具库,使得开发者能够轻松地读取、写入以及操作Microsoft Office格式的文件,尤其是Excel(.xlsx和.xls)...

Global site tag (gtag.js) - Google Analytics