博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
java无依赖读取Excel文件
阅读量:7283 次
发布时间:2019-06-30

本文共 1344 字,大约阅读时间需要 4 分钟。

   说到Java读取Excel文件,用得多的当然是POI或jxls,但今天在看一本书的时候。当中提到使用JdbcOdbcDriver这个驱动类在不依赖第三方库的情况下也能够完毕对Excel文件的读取操作,网上搜了一下原因然后自己写了个样例跑通了,在此记录一下。
Java读取数据库大家都非常熟悉,须要一个数据源与对应的驱动。开发人员通过JDBC操作驱动。驱动再去操作数据库。那么Java读取Excel文件也是类似的。在Windows系统中,能够将一个Excel文件注冊为一个ODBC数据源,注冊过程为:
a.控制面版>管理工具>数据源(ODBC)

b.在用户DSN选项卡中点击加入,选择Driver do Microsoft Excel(*.xls)

c.点击完毕,填入数据源名称。最后选择簿,即选择作为数据源的Excel文件地址
当中数据源名称最为重要。它会作为获取连接的URL的一部分。

注冊好数据源后就能够写代码了,一个示比例如以下:

public class ExcelReader {	private String entry;//ODBC数据源名称		public ExcelReader(String entry) {		this.entry = entry;	}		//sheetName为工作表名称	public String read(String sheetName) throws Exception {		StringBuilder builder = new StringBuilder();		Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();		Connection connection = DriverManager.getConnection("jdbc:odbc:" + entry);		Statement statement = connection.createStatement();		ResultSet rs = statement.executeQuery("select * from [" + sheetName + "$]");		while(rs.next()) {			builder.append(rs.getObject(1));//示意性仅仅读取一列		}		rs.close();		statement.close();		connection.close();		return builder.toString();	}		public static void main(String[] args) throws Exception {		ExcelReader reader = new ExcelReader("etl");		System.out.println(reader.read("test"));	}}
其原理是:开发都通过JDBC操作JdbcOdbcDriver驱动,JdbcOdbcDriver驱动连接ODBC数据源。然后ODBC操作连接Excel文件(Windows完毕)。通过一步步地适配从而完毕读取Excel文件的目的。

你可能感兴趣的文章
《高可用架构·中国初创故事(第3期)》一2.6 激励你的团队成员
查看>>
2013 年最好的 20 款免费 jQuery 插件
查看>>
Firefox 联手 Chrome 合作开发网页 VR 标准
查看>>
《C语言编程初学者指南》一第2章 基本数据类型
查看>>
测试并发应用(二)监控Phaser类
查看>>
云际阔 总相连 ——云栖大会上海峰会阿里云服务专场干货集锦
查看>>
《HTML5+CSS3网页设计入门必读》——导读
查看>>
《数据分析实战 基于EXCEL和SPSS系列工具的实践》一1.3 数据分析的几大抓手
查看>>
使用cProfile等工具来提高python的执行速度
查看>>
猎聘:分析70万在线职位后,告诉你数据分析师前景
查看>>
《流量的秘密 Google Analytics网站分析与商业实战》一1.6 有问有答:衡量成功...
查看>>
如何将 Linux 命令的输出赋值给变量
查看>>
《Puppet实战手册》——2.12 使用正则表达式进行替换
查看>>
《C++ Primer Plus(第6版)中文版》——1.4 程序创建的技巧
查看>>
《Java程序员面试秘笈》—— 面试题13 Java开发原则
查看>>
Oracle官方并发教程之Executor接口
查看>>
Python正则表达式指南
查看>>
DevOps转型的柳暗花明:开发运维一体化PaaS平台建设
查看>>
使用阿里云容器服务Jenkins实现持续集成之GitLab篇
查看>>
京东2017校园招聘笔试真题(希尔排序)
查看>>