经常会用到,废话不多说直接贴代码

//读取Excel文件

public static DataTable ReadExcelToTable(string path)//excel存放的路径
{
try
{

//连接字符串
string connstring = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=" + path + ";Extended Properties='Excel 8.0;HDR=Yes;IMEX=1';";

using (OleDbConnection conn = new OleDbConnection(connstring))
{
conn.Open();
//读取sheetName
DataTable sheetsName = conn.GetOleDbSchemaTable(OleDbSchemaGuid.Tables, new object[] { null, null, null, "Table" }); 
string firstSheetName = sheetsName.Rows[0][2].ToString();
string sql = string.Format("SELECT * FROM [{0}]", firstSheetName); 
OleDbDataAdapter ada = new OleDbDataAdapter(sql, connstring);
DataSet set = new DataSet();
ada.Fill(set);
return set.Tables[0];
}
}
catch (Exception)
{
return null;
}

}

//把读取到的数据转换为 list

public class ModelConvertHelper<T> where T : new()
{
public static IList<T> ConvertToModel(DataTable dt)
{
// 定义集合 
IList<T> ts = new List<T>();

// 获得此模型的类型 
Type type = typeof(T);
string tempName = "";

foreach (DataRow dr in dt.Rows)
{
T t = new T();
// 获得此模型的公共属性 
PropertyInfo[] propertys = t.GetType().GetProperties();
foreach (PropertyInfo p in propertys)
{
tempName = p.Name; // 检查DataTable是否包含此列

if (dt.Columns.Contains(tempName))
{
// 判断此属性是否有Setter 
if (!pi.CanWrite) continue;

object value = dr[tempName];
if (value != DBNull.Value)
p.SetValue(t, value, null);
}
}
ts.Add(t);
}
return ts;
}

转载于:https://www.cnblogs.com/WlxjSan/p/10749056.html

C#读取Excel文件,准换为list相关推荐

  1. 两个关于.NET读取EXCEL文件的问题,记下来,很有用!

    今天有个同事问我个问题,他在用C#"Microsoft.Jet.OLEDB.4.0"读取EXCEL文件的时候,发现了一个问题,是这样的,他读出来的EXCEL数据在DATAGRID中 ...

  2. python 遍历文件夹写入excel_python:创建文件夹:写入文本1:读取txt:读取Excel文件遍历文件夹:...

    https://blog.csdn.net/u011956147/article/details/80369731 创建文件夹: import os import shutil def buildfi ...

  3. python自动读取excel文件邮箱列表,自动批量发送邮件项目(附使用方法+代码)

    python自动发送邮件项目 项目简介 使用方法 项目结构 完整项目代码 结语 项目简介 该项目功能是利用python自动读取excel文件中的邮箱列表,并批量发送邮件到目标邮箱,进行客户挖掘的.该项 ...

  4. python pandas读取excel文件

    python pandas读取excel文件 data=pd.read_excel('C:\Users\86188\python\dummy.xlsx') 会报错:SyntaxError: (unic ...

  5. php把excel变成数组,PHP excel读取excel文件转换为数组

    /* 备注:先去下载PHP EXCEL--http://download-codeplex.sec.s-msft.com/Download/Release?ProjectName=phpexcel&a ...

  6. python 读取excel文件 效率 时间 格式_python读取Excel文件中的时间数据

    在使用python读取Excel文件中的时间格式,碰到的时间格式转换问题: 读取这样的表格: 输出这样的数据结果: 然而这样的结果却不是我们想要的,我们需要的是这样的结果: 1.安装python官方库 ...

  7. C#读取excel文件数据丢失问题

    最近在处理C#读取excel文件时碰到了个BT问题,有部分数据读取失败了,翻看了不少资料,终于找到了问题的所在,所以在这里跟大伙分享下: 简要问题分析: 用C#读取excel文件数据时,出现数据丢失现 ...

  8. R语言读取excel文件实战(read.xlsx函数、read_excel函数、read.xlsx函数、Write函数)

    R语言读取excel文件实战(read.xlsx函数.read_excel函数.read.xlsx函数.Write函数) 目录 R语言读取excel文件实战(read.xlsx函数.read_exce ...

  9. matlab显示服务器出现意外,Matlab 读取excel文件提示服务器出现意外情况或无法读取问题解决...

    1.问题描述: 该错误通常发生在应用函数读取excel文件(后缀xls或xlsx)时. 应用xlsread函数读取提示服务器出现意外情况: 应用importdata读取时提示can't open fi ...

最新文章

  1. 元宇宙加速近眼显示产业化
  2. Load-time relocation of shared libraries
  3. Python 技术篇-用pytesseract库进行图像识别之环境配置
  4. git 移动分支指针_git 分支( branch ) 的基本使用
  5. java泛型bean copy list
  6. 怎么成为日上会员直邮_18个日上直邮问题汇总,可以参考一下哦
  7. 梦真的是反的 | 今日最佳
  8. CSS3特效 - 会呼吸的button按钮
  9. ASP.NET异常全记录-----回发或回调参数无效
  10. 苹果x来电闪光灯怎么设置_苹果6splus来电没有声音,苹果6sp听筒没有声音怎么回事...
  11. 201542010208、201571030331软件工程结对项目
  12. 2015年1月c语言程序设 第二版,2015年电大1253+C语言程序设计A(2010年1月)小抄参考.doc...
  13. 和菜鸟一起学android4.0.3源码之硬件gps简单移植【转】
  14. 整理了20个数据可视化大屏,源码限时领取!
  15. 代码打累了看看短腿基!
  16. 哪款mac写python_新款Mac Pro有几个圈圈?写几行Python数一下
  17. 【目标检测算法】YOLO-V5实战检测VOC2007数据集
  18. Ltspice测量波形的相关数据
  19. 安卓车机能升级鸿蒙吗,华为鸿蒙系统能否应用到车机系统
  20. ElasticJob‐Lite:HTTP作业

热门文章

  1. 《ANSYS 14.0超级学习手册》一第2章 高级应用的基石——APDL
  2. 开放式创新改变世界——OpenStack生态系统将重新洗牌
  3. 最新的10个优质Python开源项目
  4. 这个Python知识点,90%初学者没太整明白
  5. 2021下半年,我只想用Python搞钱!
  6. vuecli3 引入全局scss变量_vuecli3 从搭建到优化
  7. 想从事单片机工作,C语言要达到什么水平?
  8. linux内核崩溃无日志,教你如何捕捉内核崩溃信息
  9. mysql数据库链接百分号_数据库百分号怎么用
  10. poj1419(最大独立集)