首页 > 原创文章 > 软件开发 > 查看文章

使用C#读取Excel文件内容的两种方法

所属分类:软件开发 来源: 丁老师原创 更新时间:2024-11-25 11:07 浏览: 3189 IP属地: 深圳
点击阅读全文

使用c#读取excel文件可以通过OleDbDataAdapter来进行读取,将excel文件作为数据库,以检索数据的方式来读取excel内容。具体代码如下:

var fileName = string.Format("{0}\\fileNameHere", Directory.GetCurrentDirectory());
var connectionString = string.Format("Provider=Microsoft.Jet.OLEDB.4.0; data source={0}; Extended Properties=Excel 8.0;", fileName);

var adapter = new OleDbDataAdapter("SELECT * FROM [workSheetNameHere$]", connectionString);
var ds = new DataSet();

adapter.Fill(ds, "anyNameHere");

DataTable data = ds.Tables["anyNameHere"];

也可以设置data为

var data = ds.Tables["anyNameHere"].AsEnumerable();

这种方式可以使用LINQ进行搜索,并从字段中构建结构

var query = data.Where(x => x.Field<string>("phoneNumber") != string.Empty).Select(x =>
	new MyContact
	{
		firstName= x.Field<string>("First Name"),
		lastName = x.Field<string>("Last Name"),
		phoneNumber =x.Field<string>("Phone Number"),
	}
);


相关文章

js/php/java/python常用语法...

js#replace替换var str="Hello world! world is beautiful.";var str_new=str.replace("world","JavaS...

Telegram Mini小程序开发介绍

TelegramMini小程序基于Javascript开发语言,是集成在Telegram应用内的轻量化网页应用。类似微信小程序,可以直接在Telegram对话或群组中运行而无需单独下载。Telegram小程序支持的应用程序:Telegr...

C++为什么不能在未命名的结构上调用成员函数...

int main() {auto hello= struct {int test() {return 1;}}().test();}有初学C++的小伙伴提问,在运行C++代码时报错,错误提示如下:<source :2:18: er...

fastadmin非菜单链接,跳转菜单页面的...

在fastadmin中,一个页面的非菜单链接,想要点击后打开指定页面,并且菜单自动展开,该怎么实现呢?经过丁老师研究后,发现超级简单,废话不多说,直接上代码:<a class="btn-addtabs" hre...

推荐文章

uniapp开发微信小程序怎么模拟位置?

废话不多说,直接上货。在微信开发者工具调试栏,找到Sensor(传感器)。Geolocation,勾选启用,下边输入经纬度即可!

mysql导入文件,source命令/php...

用phpmyadmin导入大数据库文件时,容易502badgateway,可以直接在linux上用mysql原生命令导入。1.上传sql文件到目录用Xshell登录服务器,将迁移过来的sql文件移到home目录下,方便下一步的操作,站长之前...

fastadmin btn-dialog按钮...

fastadmin里自定义按钮的btn-dialog,弹出窗口时默认大小,设置了data-area无效,经过研究后,发现了可用的方法,直接上代码不废话:table.on('post-body.bs.table',functi...

宝塔面板phpmyadmin数据库表导航树禁...

宝塔面板的phpmyadmin,默认数据库表导航树是每30个一页,非常的不直观,可以通过修改宝塔phpmyadmin配置文件的方式来禁止他分页。修改方法:1.进入服务器/www/server/phpmyadmin/phpmyadmin_随机...