以下代码我没有真正去实践,紧做为总结,方便以后查阅:

这种方法需要设置ODBC源.....

参考:

http://xytang.blogspot.com/2008/02/how-to-connect-to-excel-spreadsheet.html

http://www.devx.com/Java/Article/17848

http://www.java2s.com/Tutorial/Java/0340__Database/UseJDBCODBCbridgetoreadfromExcel.htm

附代码:

 import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.SQLException;
import java.sql.Statement; import org.dom4j.Document;
import org.dom4j.DocumentHelper;
import org.dom4j.Element; /**
* 这种读取Excel的方式应该配配置ODBC数据源.
* @author CDV-DX7
*
*/
public class ExcelUtil {
private String driverName = "sun.jdbc.odbc.JdbcOdbcDriver";
private String dataSourceUrl = "jdbc:odbc:driver={Microsoft Excel Driver (*.xls)};DBQ="; // 不设置数据源 public ExcelUtil(){} public void setDriverName(String driverName){
this.driverName = driverName;
} /**
* 从excel中获取数据,转化为XML
* @param excelUrl
* @param sheetName
* @return
* @throws ClassNotFoundException
* @throws SQLException
*/
public Document getExcelData(String excelUrl, String sheetName)
throws ClassNotFoundException, SQLException {
Connection dbConn = null;
try {
Class.forName(this.driverName);
excelUrl = this.dataSourceUrl + excelUrl;
dbConn = DriverManager.getConnection(excelUrl, "", "");
Statement smt = dbConn.createStatement();
ResultSet rs = smt.executeQuery("select * from [" + sheetName + "$]");
Document doc = DocumentHelper.createDocument();
Element elmRoot = doc.addElement("Tab");
while (rs.next()) {
Element elmRow = elmRoot.addElement("Row"); int colNum = rs.getMetaData().getColumnCount();
for (int i = 1; i <= colNum; i++) {
Element elmCol = elmRow.addElement("Col");
elmCol.setText(rs.getString(i));
}
} return doc;
} finally {
dbConn.close();
}
} public static void main(String[] args) {
try{
//使用方法示例
String excelUrl = "C:\\Users\\CDV-DX7\\Desktop\\节目信息输入数据.xls";
String sheetName = "节目列表";
ExcelUtil excelutil = new ExcelUtil();
excelutil.getExcelData(excelUrl,sheetName);
}catch (Exception e){
e.printStackTrace();
System.out.println("出错啦:"+e.getMessage());
}
}
}

使用JDBC-ODBC读取Excel文件的更多相关文章

  1. java无依赖读取Excel文件

    说到Java读取Excel文件,用得多的当然是POI或jxls,但今天在看一本书的时候.当中提到使用JdbcOdbcDriver这个驱动类在不依赖第三方库的情况下也能够完毕对Excel文件的读取操作, ...

  2. .Net读取Excel文件时丢失数据的问题 (转载)

    相信很多人都试过通过OleDB读取Excel文件,这种方法效率十分高,只是有一点会让人十分头痛,就是当一列中既有混合型数据,又有纯数据时,往往容易丢失数据. 百度过后,改连接字符串 “HDR=YES; ...

  3. C# 读取EXCEL文件的三种经典方法

    1.方法一:采用OleDB读取EXCEL文件: 把EXCEL文件当做一个数据源来进行数据的读取操作,实例如下: public DataSet ExcelToDS(string Path) { stri ...

  4. c# .Net :Excel NPOI导入导出操作教程之读取Excel文件信息及输出

    c# .Net :Excel NPOI导入导出操作教程之读取Excel文件信息及输出 using NPOI.HSSF.UserModel;using NPOI.SS.UserModel;using S ...

  5. ADO.NET 读取Excel文件,并作数据源

    项目中需要用的功能,贴上代码了. 需要注意的地方:配置Web.config的时候要注意版本问题! //若是在Web.config中配置数据源,如下 <add key="ExcelCon ...

  6. PHPExcel读取Excel文件的实现代码

    <?php require_once 'PHPExcel.php'; /**对excel里的日期进行格式转化*/ function GetData($val){ $jd = GregorianT ...

  7. 使用jxl,poi读取excel文件

    作用:在java后台添加一个方法,读取导入的excel内容,根据需要返回相应的sql语句,以完成对临时表的插入操作. 使用jxl读取excel文件 package com.sixthf.bi.sapp ...

  8. C# 读取Excel文件里面的内容到DataSet

    摘要:读取Excel文件里面的内容到DataSet 代码: /// <summary> /// 读取Excel文件里面的内容到DataSet /// </summary> // ...

  9. R语言读取excel文件的3种方法

    R读取excel文件中数据的方法: 电脑有一个excel文件,原始的文件路径是:E:\R workshop\mydata\biom excel数据为5乘2阶矩阵,元素为                ...

  10. C#读取Excel文件:通过OleDb连接,把excel文件作为数据源来读取

    转载于:http://developer.51cto.com/art/200908/142392.htm C#读取Excel文件可以通过直接读取和OleDb连接,把excel文件作为数据源来读取:   ...

随机推荐

  1. [LeetCode] Consecutive Numbers 连续的数字 --数据库知识(mysql)

    1. 题目名称   Consecutive Numbers 2 .题目地址 https://leetcode.com/problems/consecutive-numbers/ 3. 题目内容 写一个 ...

  2. Web服务器与Web系统发布

    在讨论Web系统发布之前,我们先来辨析两个概念:服务器.Web服务器. 通常,我们说的服务器,是一台提供服务的计算机,是硬件概念.这台主机有其IP地址,有服务端口,我们要访问时,就是通过IP地址唯一地 ...

  3. Mahout之深入navie Bayesian classifier理论

    转自:http://www.cnblogs.com/leoo2sk/archive/2010/09/17/naive-bayesian-classifier.html 1.1.摘要 贝叶斯分类是一类分 ...

  4. Linux 下安装android

    主要参考了这篇文章 http://segmentfault.com/a/1190000003069062#articleHeader2 这里提到了“unable to run mksdcard sdk ...

  5. Decode放在where条件后的新用法

    今天遇到一种特殊情况的查询,在查询某表时,要通过判断其中一个字段的值再用其他字段作为条件查询,比如有3个字段 columnA,columnBm,columnC,columnA的值由两个——分别是0和1 ...

  6. ?this&函数自身的引用

    <!doctype html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  7. yum update Transaction Check Error

    update系统时,发现其中一台server居然提示: Transaction Check Error:file /usr/lib/perl5/5.8.8/CGI.pm from install of ...

  8. jquery 显示“加载状态 结束”

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

  9. Cortex-M3 Context Switching

    http://www.embedded.com/design/embedded/4231326/Taking-advantage-of-the-Cortex-M3-s-pre-emptive-cont ...

  10. PostgreSQL中的AnyEnum例子

    建立函数: CREATE OR REPLACE FUNCTION enumtest(anyenum) RETURNS text AS $$ ::text; $$ LANGUAGE SQL; 建立enu ...