- 浏览: 135614 次
- 性别:
- 来自: 北京
-
文章分类
最新评论
-
蜀山红日:
到varchar的时候它说标识符无效该怎么办呢
Oracle 修改表字段长度 -
心的方向:
我也在做润乾报表开发,有时间加下我q345943980
jsp与润乾报表软件整合 -
ljpandmlx:
页面接收不到username的值,参数username还有其他 ...
如何将web报表查询的参数保存 -
dingherry:
如果不用内置函数,去实现这些功能呢?
java字符串与整数之间的互相转换
package com.icss.util;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement;
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;
/**
* java读取excel文件
*
* 一个Excel文件的层次:Excel文件->工作表->行->单元格 对应到POI中,为:workbook->sheet->row->cell
*
*/
public class exlFile {
public static String outputFile = "E:\\NQ_SCHEDULE_INFO.xls";
public static String fileToBeRead = "E:\\NQ_SCHEDULE_INFO.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));
//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(cellNumOfRow+" cellType :"+cellType);
switch (cellType) {
case 0://Numeric
String strCell = df.format(aCell
.getNumericCellValue());
System.out.println("strCell0===============:"+strCell);
break;
case 1://String
strCell = aCell.getStringCellValue();
System.out.println("strCell1¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥:"+strCell);
break;
default:
System.out.println("格式不对不读");//其它格式的数据
}
}
}
}
}
}
}
} catch (Exception e) {
System.out.println("ReadExcelError" + e);
}
}
public static void main(String[] args) throws SQLException {
try {
//1. 连接Oracle 8/8i/9i的驱动程序:
Class.forName("oracle.jdbc.driver.OracleDriver").newInstance();
//2. 建立连接:
Connection con=DriverManager.getConnection("jdbc:oracle:thin:@192.168.30.150:1521:orcl","JNNQ","JNNQ");
//
Statement sm=con.createStatement();
//String sql="insert into nq_schedule_info names(REPORT_ID,REPORT_CODE,TBY,TBR, COMMENTT)values (?,?,?,?,?)";
//seq_product.nextval
String sql="insert into nq_schedule_info values (nq_schedule_info_sequence.nextval,?,?,?,?,?)";
PreparedStatement pst=con.prepareStatement(sql);
//将被表示成1.3922433397E10的手机号转化为13922433397,不一定是最好的转换方法
DecimalFormat df = new DecimalFormat("#");
try {
// 创建对Excel工作簿文件的引用
HSSFWorkbook workbook = new HSSFWorkbook(new FileInputStream(
fileToBeRead));
//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());
int p1=0,p4 = 0,p3=0,p0 = 0;
String s2 = null,s5=null;
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();
String strCell;
System.out.println(cellNumOfRow+" cellType :+++++++++++++++"+cellType);
switch (cellType) {
case 0://Numeric
strCell = df.format(aCell
.getNumericCellValue());
System.out.println("strCell0===============:"+strCell);
if(0==cellNumOfRow) p0=Integer.parseInt(strCell);
if(1==cellNumOfRow) p1=Integer.parseInt(strCell);
if(3==cellNumOfRow) p3=Integer.parseInt(strCell);
if(4==cellNumOfRow) p4=Integer.parseInt(strCell);
break;
case 1://String
strCell = aCell.getStringCellValue();
System.out.println("strCell1¥¥¥¥¥¥¥¥¥¥¥¥¥¥¥:"+strCell);
if(2==cellNumOfRow) s2=strCell;
if(5==cellNumOfRow) s5=strCell;
break;
default:
if(0==cellNumOfRow) p0=0;
if(1==cellNumOfRow) p1=0;
if(3==cellNumOfRow) p3=0;
if(4==cellNumOfRow) p4=0;
if(2==cellNumOfRow) s2="0";
if(5==cellNumOfRow) s5="0";
System.out.println("格式不对不读");//其它格式的数据
}
}
}
System.out.println("pppppppppppppppppppppppppppp"+p0+" "+p1+" "+p3+" "+p4+" "+s2+" "+s5+" ");
//pst.setInt(0, "");
pst.setInt(1, p1);
pst.setString(2, s2);
pst.setInt(3, p3);
pst.setInt(4, p4);
pst.setString(5, s5);
pst.execute();
con.commit();
}
}
}
}
} catch (Exception e) {
System.out.println("????????");
System.out.println("ReadExcelError" + e);
}
ResultSet rs=sm.executeQuery(sql);
while (rs.next())
{
//对结果的处理
}
rs.close();
sm.close();
con.close();
} catch (InstantiationException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IllegalAccessException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (ClassNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
exlFile poi = new exlFile();
//poi.CreateExcel();
poi.readExcel();
}
}
发表评论
-
oracle 优化注意的问题
2011-08-16 15:47 592(1)选择最有效率的表名顺序(只在基于规则的优化器中有效): ... -
实例对比Oracle中truncate和delete的区别
2011-05-29 11:06 680实例对比Oracle中truncate和delete的区别 ... -
Oracle的partition
2011-05-29 11:05 918一、Oracle分区简介 ORAC ... -
pl\sql工具导出oracle10g 导出序列和触发器方法
2011-05-14 19:24 10784不导出表的数据,可用Tools--Export User .. ... -
oracle 远程命令链接
2011-02-26 01:54 924语法:sqlplus usr/pwd@//host:port/ ... -
orale 查询 日期条件使用
2011-01-17 18:08 738select * from dmias_dm_periodic ... -
oracle 更改表结构 ---- 添加
2011-01-14 10:06 836SQL> alter table dmias_dm_mo ... -
JDBC对事务的支持
2011-01-11 18:38 895JDBC对事务的支持 并不是所有的数据库都支持事务,即 ... -
oracle插入时如何插入uuId
2011-01-11 16:14 1594SQL> select sys_guid() fro ... -
怎样查看一个表所在表空间?
2011-01-07 14:02 1150select TABLESPACE_NAME from all ... -
tf开普同步
2011-01-05 18:43 677--插入forminfo--insert into jncje ... -
Ecxel数据导入Oracle 数据库中
2011-01-03 13:04 1342package com.icss.util.readToDB; ... -
oracle 安装成功所要记录信息,见表空间,创建用户赋予权限和导入表
2010-10-29 16:52 1022Enterprise Manager Database Con ... -
查询全部用户
2010-10-27 15:16 751select username,default_tablesp ... -
如何配置Oracle客户端
2010-10-19 09:20 7461、打开cmd输入netca。 2、选择【本地net服务名配置 ... -
oracle建表语句
2010-10-14 12:48 1840drop TABLE REQIONALISM;create t ... -
oracle注册表删除--彻底卸载Oracle
2010-09-17 15:14 987用Oracle自带的卸载 ... -
Oracle 修改表字段长度
2010-07-31 19:53 9828Oracle 修改表字段长度 alter table ...
相关推荐
JXL(Java操作Excel文件Oracle数据库)
在IT行业中,将Excel数据导入Oracle数据库...总之,将Excel数据写入Oracle数据库涉及多个步骤,需要结合合适的工具和技术。理解这些过程可以帮助你更有效地进行数据迁移,从而提高工作效率并确保数据的准确性和完整性。
6. **写入Excel**:Java可以借助Apache POI库或其他类似的库(如JExcelApi)来读写Excel文件。读取Oracle数据后,可以将数据写入Excel的工作表中,每个表格行对应数据库记录的一行。 7. **读取Excel数据**:从Excel...
在Java程序中,我们通常按照以下步骤来连接Oracle数据库: 1. 加载和注册数据库驱动。例如,对于Oracle数据库,我们需要加载Oracle JDBC驱动: ```java Class.forName("oracle.jdbc.driver.OracleDriver"); ``` 2. ...
在Java编程领域,将数据库中的数据导入到Excel文件是一项常见的任务,这有助于数据分析、报告生成或者数据备份。本文将深入探讨如何使用Java实现这一功能,主要涉及以下知识点: 1. **Java连接数据库**:首先,我们...
4. **读取Excel数据**:使用编程语言(如C#、Python或Java)的库,如.NET Framework中的`Microsoft.Office.Interop.Excel`或开源的`EPPlus`,读取Excel文件中的数据。这些库能方便地访问和操作Excel文件内容。 5. *...
jxl.jar不是数据库驱动,而是Java Excel API,用于读写Excel文件。这个库可以方便地在Java程序中操作Excel数据,比如读取Excel表格数据到Java对象,或将数据写入Excel文件。这对于需要与Excel进行数据交换的应用...
在Java编程中,将数据库中的数据导出到Excel文件...通过以上步骤,你可以成功地使用Java从数据库中读取数据并将其导出到Excel文件。这个过程涉及到了数据库操作、文件I/O以及第三方库的使用,是Java开发中的常见技能。
这里,我们主要关注如何通过Java编程来实现这个功能,利用JXL库来处理Excel文件,并通过Java JDBC连接Oracle数据库进行数据导入。 首先,`JXL`是一个强大的Java库,专门用于读取和写入Excel文件。在这个项目中,`...
- Python:使用pandas库读取Excel数据,再利用pandas的`to_sql`函数将数据写入数据库,例如`df.to_sql('table_name', con=engine, if_exists='append')`。 - Java:使用JDBC驱动,先加载Excel数据到Java的...
Python中的`pandas`库或Java的Apache POI库是常用的工具,它们能读取Excel文件并将其转换为数据框或表格。解析数据时,要考虑到不同版本的Excel文件格式(如.XLS, .XLSX)可能有所不同。 4. **数据库交互**:解析...
本文主要介绍如何将Oracle数据库中的数据导出并写入Excel文件,这在数据分析、报表生成或数据备份等场景中非常实用。 1. **Oracle数据库数据提取**: 在这个例子中,我们看到一个名为"TBYZB_FIELD_PRESSURE"的...
本文将详细讲解如何实现这个过程,主要涉及Java与数据库的交互、Excel文件的创建以及数据的读写操作。 首先,我们需要一个数据库连接。在Java中,可以使用JDBC(Java Database Connectivity)API来连接各种类型的...
标题中的“dwr结合jQuery实现Ajax技术”是指在Web开发中使用Direct Web Remoting (DWR) 和 jQuery库来创建...开发者需要掌握Java编程、Ajax技术、SQL查询、Oracle数据库管理以及使用jxl和POI处理Excel文件的相关技能。
数据交换通常涉及到读取Excel文件中的数据,并将其存入数据库,或者从数据库中检索数据并写入到Excel文件中。这个类可能包含了以下功能: 1. **读取Excel数据**:类可能会使用诸如Apache POI这样的库来读取Excel...
**Excel数据交互**:在Oracle与Excel之间进行数据交换,通常会用到API库,如Java的Apache POI(在本例中提到了NPOI.dll,它是.NET平台下的一个类似实现),它允许程序读写Microsoft Office格式的文件,包括Excel。...
- 如果需要将数据写入 Oracle 数据库,你需要额外编写代码连接数据库并执行 SQL 操作。 4. **扩展**: - 除了读取,jxl 也支持写入 Excel 文件。你可以创建一个新的 `WritableWorkbook`,然后使用 `WritableSheet`...
- Apache POI是Java库,用于读取、写入和修改Microsoft Office格式的文件,包括Excel。在上述描述中,可以看到项目导入了几个POI的jar文件,如poi-3.5-beta6-20090622.jar,这表明程序依赖POI来创建和操作Excel文件...
例如,Java中的JDBC(Java Database Connectivity)允许直接读取Excel文件并插入数据库。本提供的jar包可能就是用于此目的,包含读取Excel和执行SQL操作的类。 三、数据库数据导出到Excel 1. 手动导出:在数据库...
在标签中,“excle导入”和“ORACLE”是两个关键点,意味着这个源码是关于如何从Excel文件中提取数据并导入到Oracle数据库的过程。Excel是一种常见的数据处理工具,而Oracle则是一种广泛使用的大型关系型数据库管理...