`
cherryQQ
  • 浏览: 1139251 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

oracle java解析excel

    博客分类:
  • java
阅读更多

import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.text.DecimalFormat;
import org.apache.poi.hssf.usermodel.HSSFCell;
import org.apache.poi.hssf.usermodel.HSSFRow;
import org.apache.poi.hssf.usermodel.HSSFSheet;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
/**
*
* @author shiwt
*
* java读取excel文件
*
* 一个Excel文件的层次:Excel文件->工作表->行->单元格 对应到POI中,为:workbook->sheet->row->cell
*
*/
public class POItest {
public static String outputFile = "c:\\test\\tels.xls";
public static String fileToBeRead = "c:\\test\\tels.xls";
public void CreateExcel() {
try {
   // 创建新的Excel 工作簿
   HSSFWorkbook workbook = new HSSFWorkbook();
   // 在Excel工作簿中建一工作表,其名为缺省值
   // 如要新建一名为"效益指标"的工作表,其语句为:
   // HSSFSheet sheet = workbook.createSheet("效益指标");
   HSSFSheet sheet = workbook.createSheet();
   // 在索引0的位置创建行(最顶端的行)
   HSSFRow row = sheet.createRow((short) 0);
   //在索引0的位置创建单元格(左上端)
   HSSFCell cell = row.createCell((short) 0);
   // 定义单元格为字符串类型
   cell.setCellType(HSSFCell.CELL_TYPE_STRING);
   // 在单元格中输入一些内容
   cell.setCellValue("sweater");
   // 新建一输出文件流
   FileOutputStream fOut = new FileOutputStream(outputFile);
   // 把相应的Excel 工作簿存盘
   workbook.write(fOut);
   fOut.flush();
   // 操作结束,关闭文件
   fOut.close();
   System.out.println("文件生成...");
} catch (Exception e) {
   System.out.println("已运行 xlCreate() : " + e);
}
}
/**
*
* 读取excel,遍历各个小格获取其中信息,并判断其是否是手机号码,并对正确的手机号码进行显示
* 注意: 1.sheet, 以0开始,以workbook.getNumberOfSheets()-1结束 2.row,
* 以0开始(getFirstRowNum),以getLastRowNum结束 3.cell,
* 以0开始(getFirstCellNum),以getLastCellNum结束, 结束的数目不知什么原因与显示的长度不同,可能会偏长
*
*/
public void readExcel() {
//将被表示成1.3922433397E10的手机号转化为13922433397,不一定是最好的转换方法
DecimalFormat df = new DecimalFormat("#");
try {
   // 创建对Excel工作簿文件的引用
   HSSFWorkbook workbook = new HSSFWorkbook(new FileInputStream(fileToBeRead));
   /**
    *获取sheet的个数
    *workbook.getNumberOfSheets()
    **/
   //System.out.println("===SheetsNum===" + workbook.getNumberOfSheets());//获取sheet数

   for (int numSheets = 0; numSheets < workbook.getNumberOfSheets(); numSheets++) {
    if (null != workbook.getSheetAt(numSheets)) {
     HSSFSheet aSheet = workbook.getSheetAt(numSheets);//获得一个sheet
     //System.out.println("+++getFirstRowNum+++" +
     // aSheet.getFirstRowNum());//
     //System.out.println("+++getLastRowNum+++" +
     // aSheet.getLastRowNum());
     for (int rowNumOfSheet = 0; rowNumOfSheet <= aSheet
       .getLastRowNum(); rowNumOfSheet++) {
      if (null != aSheet.getRow(rowNumOfSheet)) {
       HSSFRow aRow = aSheet.getRow(rowNumOfSheet);
       //System.out.println(">>>getFirstCellNum<<<"+
       // aRow.getFirstCellNum());
       //System.out.println(">>>getLastCellNum<<<"+
       // aRow.getLastCellNum());
       for (short cellNumOfRow = 0; cellNumOfRow <= aRow
         .getLastCellNum(); cellNumOfRow++) {
        if (null != aRow.getCell(cellNumOfRow)) {
         HSSFCell aCell = aRow.getCell(cellNumOfRow);
         int cellType = aCell.getCellType();
         //System.out.println(cellType);
         switch (cellType) {
         case 0://Numeric
          String strCell = df.format(aCell
            .getNumericCellValue());
           System.out.println(strCell);

          break;
         case 1://String
          strCell = aCell.getStringCellValue();
           System.out.println(strCell);

          break;
         default:
         //System.out.println("格式不对不读");//其它格式的数据
         }
        }
       }
      }
     }
    }
   }
} catch (Exception e) {
   System.out.println("ReadExcelError" + e);
}
}
public static void main(String[] args) {
POItest poi = new POItest();
//poi.CreateExcel();
poi.readExcel();
}
}
分享到:
评论

相关推荐

    excel2003 生成oracle 建表语句

    在IT行业中,数据库管理和数据处理是非常关键的部分,而Excel与Oracle数据库之间的交互是常见的工作场景。标题"excel2003 生成oracle 建表语句"涉及到一个实用工具,它允许用户利用Microsoft Excel 2003来创建Oracle...

    JAVA实现Excel表数据导入ORACLE数据库

    ### JAVA实现Excel表数据导入ORACLE数据库 #### 知识点概述 本文将详细介绍如何使用Java编程语言将Excel表格中的数据导入到Oracle数据库中。这一过程涉及到的关键技术包括:使用JDBC连接Oracle数据库、利用ODBC...

    java_Excel上传数据到Oracle数据库

    在这个场景中,我们需要用jxl来解析Excel文件,获取每一行的数据,然后准备插入到数据库中。 3. **Oracle数据库**:Oracle是企业级的关系型数据库管理系统,支持大规模数据存储和复杂查询。在Java应用中,我们通常...

    Excel树形结构数据导入Oracle数据库(Java)

    当我们面对大量结构化数据,例如Excel表格,需要将其导入到关系型数据库如Oracle时,通常会利用编程语言如Java来实现自动化处理。这篇博客“Excel树形结构数据导入Oracle数据库”提供了一个解决方案,下面将详细解析...

    导入Excel表格插入Oracle数据库

    - **Excel解析**:后端可能需要使用库如Apache POI(Java)或EPPlus(.NET)来解析Excel文件。这些库提供了API来访问单元格数据。 - **数据传输**:前端通过Ajax发送文件内容到服务器,可能使用FormData对象封装...

    Oracle解析Excel

    ### Oracle解析Excel知识点详解 #### 一、概述 在企业级应用中,经常需要将Excel文件中的数据导入到Oracle数据库中进行存储与处理。这种方式能够有效地整合非结构化数据(如Excel表格)与结构化数据(如Oracle...

    用java从Oracle的EMP表读数据并写到EXCEL中,实现oracle表的备份和导入

    7. **读取Excel数据**:从Excel中读取数据的过程与写入相反,使用POI库解析Excel文件,获取工作表,然后遍历单元格,将数据加载到内存中的数据结构。 8. **创建Oracle新表**:在Oracle数据库中,可以使用CREATE ...

    poi解析excel的poi包

    在这个场景中,我们将重点讨论如何使用Apache POI(即"poi包")解析Excel文件并将数据存入Oracle数据库。 首先,你需要在项目中引入Apache POI的依赖。如果你使用的是Maven,可以在pom.xml文件中添加以下依赖: ``...

    excel数据导入oracle

    通过上述步骤,我们可以使用Java语言和SQL*Loader工具将Excel文件中的数据导入到Oracle数据库中。这种方法不仅提高了数据处理的效率,还减少了手动录入数据时可能出现的错误。对于需要频繁进行数据迁移或批量导入的...

    JAVA_读取excel的数据

    本文将详细介绍如何使用Java语言读取Excel文件,并提供一个具体的示例代码进行解析。 #### 二、知识点概述 1. **Java读取Excel的基本原理** - Excel文件分为两种格式:`.xls`(Excel 2003及以下版本)和`.xlsx`...

    将excel数据导入到oracle数据库

    3. 数据库连接驱动:JDBC驱动(Java Database Connectivity)或ODBC驱动(Open Database Connectivity),允许Excel与Oracle进行通信。 步骤一:准备Excel数据 整理好要在Oracle中导入的Excel数据,确保数据格式...

    Oracle读取excel数据

    - 解析Excel文件内容,这可能需要第三方库,如Apache POI(Java)或者通过Oracle的外部表功能。 - 将数据加载到XYG_PUB_DATA_UPLOAD_Obj类型的实例中。 - 将这些实例插入到一个临时或永久的Oracle表中,这可能...

    (java)excel-to-sql.zip_Excel导入sql_excel_excel sql_excel 导入 SQL

    3. **Excel数据解析**:在`ExcelReader.java`中,可能包含了对Excel文件中数据的解析逻辑。这通常涉及到遍历工作表的行和列,提取出数据,并将其转换为适合数据库存储的格式。 4. **JDBC(Java Database ...

    JAVA实现数据库数据导入导出到Excel(POI)所需jar包

    这些jar包提供了解析和操作Excel文件的类和方法。 - **JDBC驱动:** 根据你使用的数据库(如MySQL, Oracle, PostgreSQL等),你需要相应的JDBC驱动jar包来建立数据库连接。 - **其他依赖:** 可能还需要如commons-...

    excel 通过jsp上传到数据库

    2. **解析Excel数据**:遍历Excel的行和列,使用`getCell()`方法获取单元格对象,并调用`getContents()`方法提取内容。这些数据被存储在一个二维数组`result[][]`中。 3. **构建SQL语句**:根据获取的数据动态构建...

    java版Excel文件导入数据库源代码

    java版Excel文件导入数据库源代码 servlet容器:tomcat(或者其他) 数据库:oracle(或者其他) 使用框架:jsp+struts1.2 支持字符型/数据型/日期型/CLOB等数据 使用步骤: 1.下载本资源,解压后得到4个文件:...

    从Excel中读取数据导入到数据库中

    首先,我们需要理解Excel是常用的数据存储和处理工具,而数据库如MySQL、SQL Server、Oracle等则用于存储大量结构化数据。将Excel数据导入数据库可以方便地进行数据分析、报表生成和业务流程自动化。 在处理合并...

    不同样式类型Excel自动化解析程序

    - 使用编程语言(如Python的pandas库、Java的Apache POI库)来读取和解析Excel文件,处理复杂样式时需要对这些库有深入理解。 2. **自动化处理**: - 自动化是这个程序的核心特性,它可以批量处理多个Excel文件,...

    Excel导入Oracle数据库关键代码

    本篇将详细解析"Excel导入Oracle数据库关键代码"这一主题。 首先,我们要理解如何通过编程方式实现Excel到Oracle数据库的导入。在这个过程中,Java语言常常被选用,因为它提供了丰富的库来处理这两种数据源。描述中...

    读取Excel生成Sql脚本

    它通过解析Excel文件来获取数据,这通常涉及到对Excel文件的结构和内容的理解。Excel文件由工作簿(Workbook)组成,每个工作簿可以包含多个工作表(Worksheet)。在解析过程中,工具会读取指定的工作表,可能还会...

Global site tag (gtag.js) - Google Analytics