资源简介
用C#开发的一个读取Excel表格的Demo,无需安装office。

代码片段和文件信息
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Data.OleDb;
using System.Data;
using System.IO;
namespace TestExcel
{
class Program
{
static void Main(string[] args)
{
string mExcelName = “D:\\hehehe.xlsx“;
string mExcelSheet = ““;
DataTable mDataTable = ExcelToDataTable(mExcelName mExcelSheet);
for (int i = 0; i < mDataTable.Rows.Count; i++)
{
for (int j = 0; j < mDataTable.Columns.Count; j++)
{
Console.Write(mDataTable.Rows[i][j].ToString() + “ “);
}
Console.WriteLine(““);
}
Console.ReadLine();
}
//用OLEDB通过设置连接字符串可以像读取sqlserver一样将excel中的数据读取出来,但是excel2003和excel2007/2010的连接字符串是不同的
///
/// 把数据从Excel装载到DataTable
///
/// 带路径的Excel文件名
/// 工作表名
/// 将数据存入的DataTable
///
public static DataTable ExcelToDataTable(string pathName string sheetName)
{
DataTable tbContainer = new DataTable();
string strConn = string.Empty;
if (string.IsNullOrEmpty(sheetName)) { sheetName = “Sheet1“; }
FileInfo file = new FileInfo(pathName);
if (!file.Exists) { throw new Exception(“文件不存在“); }
string extension = file.Extension;
switch (extension)
{
case “.xls“:
strConn = “Provider=Microsoft.Jet.OLEDB.4.0;Data Source=“ + pathName + “;Extended Properties=‘Excel 8.0;HDR=Yes;IMEX=1;‘“;
break;
case “.xlsx“:
strConn = “Provider=Microsoft.ACE.OLEDB.12.0;Data Source=“ + pathName + “;Extended Properties=‘Excel 12.0;HDR=Yes;IMEX=1;‘“;
break;
default:
strConn = “Provider=Microsoft.Jet.OLEDB.4.0;Data Source=“ + pathName + “;Extended Properties=‘Excel 8.0;HDR=Yes;IMEX=1;‘“;
break;
}
//链接Excel
OleDbConnection cnnxls = new OleDbConnection(strConn);
//读取Excel里面有 表Sheet1
OleDbDataAdapter oda = new OleDbDataAdapter(string.Format(“select * from [{0}$]“ sheetName) cnnxls);
DataSet ds = new DataSet();
//将Excel里面有表内容装载到内存表中!
oda.Fill(tbContainer);
return tbContainer;
}
//这里需要注意的地方是,当文件的后缀名为.xlsx(excel2007/2010)时的连接字符串是“Provider=Microsoft.ACE.OLEDB.12.0;....“,注意中间红色部分不是“Jet“。
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 6144 2014-10-09 16:56 TestExcel\TestExcel\bin\Debug\TestExcel.exe
文件 13824 2014-10-09 16:56 TestExcel\TestExcel\bin\Debug\TestExcel.pdb
文件 11608 2014-10-10 11:28 TestExcel\TestExcel\bin\Debug\TestExcel.vshost.exe
文件 490 2010-03-17 22:39 TestExcel\TestExcel\bin\Debug\TestExcel.vshost.exe.manifest
文件 5798 2014-10-09 16:56 TestExcel\TestExcel\obj\x86\Debug\DesignTimeResolveAssemblyReferencesInput.cache
文件 374 2014-10-10 11:28 TestExcel\TestExcel\obj\x86\Debug\TestExcel.csproj.FileListAbsolute.txt
文件 6144 2014-10-09 16:56 TestExcel\TestExcel\obj\x86\Debug\TestExcel.exe
文件 13824 2014-10-09 16:56 TestExcel\TestExcel\obj\x86\Debug\TestExcel.pdb
文件 3007 2014-10-09 16:56 TestExcel\TestExcel\Program.cs
文件 1350 2014-10-09 16:18 TestExcel\TestExcel\Properties\AssemblyInfo.cs
文件 2332 2014-10-09 16:18 TestExcel\TestExcel\TestExcel.csproj
文件 869 2014-10-09 16:18 TestExcel\TestExcel.sln
..A..H. 58880 2014-10-10 11:41 TestExcel\TestExcel.suo
目录 0 2014-10-09 16:18 TestExcel\TestExcel\obj\x86\Debug\TempPE
目录 0 2015-01-27 12:32 TestExcel\TestExcel\obj\x86\Debug
目录 0 2015-01-27 12:32 TestExcel\TestExcel\bin\Debug
目录 0 2015-01-27 12:32 TestExcel\TestExcel\obj\x86
目录 0 2015-01-27 12:32 TestExcel\TestExcel\bin
目录 0 2015-01-27 12:32 TestExcel\TestExcel\obj
目录 0 2015-01-27 12:32 TestExcel\TestExcel\Properties
目录 0 2015-01-27 12:32 TestExcel\TestExcel
目录 0 2015-01-27 12:32 TestExcel
----------- --------- ---------- ----- ----
124644 22
相关资源
- C#百度地图源码
- Visual C#.2010从入门到精通配套源程序
- C# 软件版本更新
- C#屏幕软键盘源码,可以自己定制界面
- 智慧城市 智能家居 C# 源代码
- c#获取mobile手机的IMEI和IMSI
- C#实现简单QQ聊天程序
- 操作系统 模拟的 欢迎下载 C#版
- C#写的计算机性能监控程序
- 用C#实现邮件发送,有点类似于outlo
- MVC model层代码生成器 C#
- c#小型图书销售系统
- C# Socket Server Client 通讯应用 完整的服
- c# winform 自动登录 百度账户 源代码
- C#编写的16进制计算器
- C#TCP通信协议
- C# 数据表(Dataset)操作 合并 查询一
- C#语音识别系统speechsdk51,SpeechSDK51L
- 数据库备份还原工具1.0 C# 源码
-
[免费]xm
lDocument 节点遍历C# - EQ2008LEDc#开发实例
- DirectX.Capturec# winform 操作摄像头录像附
- c# 实现的最大最小距离方法对鸢尾花
- C#版保龄球记分代码
- C#自定义控件
- 基于c#的实验室设备管理系统621530
- C# 使用ListView控件实现图片浏览器(源
- C#简单窗体聊天程序
- C#指纹识别系统程序 报告
- c# 高校档案信息管理系统
评论
共有 条评论