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

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

所属分类:软件开发 来源: 丁老师原创 更新时间:2024-11-25 11:07 浏览: 4880 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"),
	}
);


标签:

相关文章

Css中Flex布局下两边高度不一致的解决方...

在css中,flex弹性布局可以实现内部对象左右、垂直的对齐,在多个html对象中,设置flex后一般情况下,内部的对象高度是保持一致的。比如一个div设置了flex,内部有3个div,这3个div的高度以最高的一个div高度值为准保持...

微信小程序提示“手机号快速验证组件”资源包用...

微信小程序自2023年8月起,开始对《手机号快速验证组件》进行收费,每个小程序有1000次的免费额度,超过额度就要收费。说白了就是以后在使用微信小程序获取用户手机(用户主动授权)的时候,需要按次数收费了。那么,在当前的经济状况下,如何做...

hash_hmac(): Unknown h...

最近在使用Fastadmin时,突然遇到一个奇怪的问题,程序抛出“hash_hmac(): Unknown hashing algorithm”异常。之前都好好的,怎么突然就遇到这么个问题呢?查看了下Driver.php这个源码,发现在...

My97DatePicker在iframe页...

问题描述:在使用iframe的框架系统中,左侧菜单,右侧为iframe页面区域,由左侧的菜单控制右侧的iframe链接显示页面。每个页面都由my97datepicker,在刷新网页首次打开右侧页面内容时,触发WdatePicker显示日...

推荐文章

Photoshop宽度像素和网页宽度像素不一...

在用photoshop设计时,有的同学会发现,在网页中设置的宽度1000px,截屏后,再用photoshop打开后测量同样图像的宽度时,这个宽度就不是1000像素,而是1200多甚至1300多,是个很奇怪的问题,丁老师检查了photosho...

CI框架页面添加全局变量的方法

CI框架是一款很小却又非常强大的PHP程序框架,非常适合用来搭建中小型网站以及扩展程序。有同学问到,在使用CI框架时,比如要对全站的标题、公司信息、电话等设置一个全局变量,不用每个页面都写死,该怎么办呢?丁老师来教你:1.打开页面的控制器文...

FastAdmin btn-dialog按钮...

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

Mysql 1267 Illegal mix...

这个问题,用普通sql语句查询,好解决,把表的字符编码改为对应的就可以了。 但在使用视图查询时,比如select 'aaa' as type from xxx; select * from view where type=...