C#读取Excel文件,准换为list
经常会用到,废话不多说直接贴代码
//读取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相关推荐
- 两个关于.NET读取EXCEL文件的问题,记下来,很有用!
今天有个同事问我个问题,他在用C#"Microsoft.Jet.OLEDB.4.0"读取EXCEL文件的时候,发现了一个问题,是这样的,他读出来的EXCEL数据在DATAGRID中 ...
- python 遍历文件夹写入excel_python:创建文件夹:写入文本1:读取txt:读取Excel文件遍历文件夹:...
https://blog.csdn.net/u011956147/article/details/80369731 创建文件夹: import os import shutil def buildfi ...
- python自动读取excel文件邮箱列表,自动批量发送邮件项目(附使用方法+代码)
python自动发送邮件项目 项目简介 使用方法 项目结构 完整项目代码 结语 项目简介 该项目功能是利用python自动读取excel文件中的邮箱列表,并批量发送邮件到目标邮箱,进行客户挖掘的.该项 ...
- python pandas读取excel文件
python pandas读取excel文件 data=pd.read_excel('C:\Users\86188\python\dummy.xlsx') 会报错:SyntaxError: (unic ...
- php把excel变成数组,PHP excel读取excel文件转换为数组
/* 备注:先去下载PHP EXCEL--http://download-codeplex.sec.s-msft.com/Download/Release?ProjectName=phpexcel&a ...
- python 读取excel文件 效率 时间 格式_python读取Excel文件中的时间数据
在使用python读取Excel文件中的时间格式,碰到的时间格式转换问题: 读取这样的表格: 输出这样的数据结果: 然而这样的结果却不是我们想要的,我们需要的是这样的结果: 1.安装python官方库 ...
- C#读取excel文件数据丢失问题
最近在处理C#读取excel文件时碰到了个BT问题,有部分数据读取失败了,翻看了不少资料,终于找到了问题的所在,所以在这里跟大伙分享下: 简要问题分析: 用C#读取excel文件数据时,出现数据丢失现 ...
- R语言读取excel文件实战(read.xlsx函数、read_excel函数、read.xlsx函数、Write函数)
R语言读取excel文件实战(read.xlsx函数.read_excel函数.read.xlsx函数.Write函数) 目录 R语言读取excel文件实战(read.xlsx函数.read_exce ...
- matlab显示服务器出现意外,Matlab 读取excel文件提示服务器出现意外情况或无法读取问题解决...
1.问题描述: 该错误通常发生在应用函数读取excel文件(后缀xls或xlsx)时. 应用xlsread函数读取提示服务器出现意外情况: 应用importdata读取时提示can't open fi ...
最新文章
- 元宇宙加速近眼显示产业化
- Load-time relocation of shared libraries
- Python 技术篇-用pytesseract库进行图像识别之环境配置
- git 移动分支指针_git 分支( branch ) 的基本使用
- java泛型bean copy list
- 怎么成为日上会员直邮_18个日上直邮问题汇总,可以参考一下哦
- 梦真的是反的 | 今日最佳
- CSS3特效 - 会呼吸的button按钮
- ASP.NET异常全记录-----回发或回调参数无效
- 苹果x来电闪光灯怎么设置_苹果6splus来电没有声音,苹果6sp听筒没有声音怎么回事...
- 201542010208、201571030331软件工程结对项目
- 2015年1月c语言程序设 第二版,2015年电大1253+C语言程序设计A(2010年1月)小抄参考.doc...
- 和菜鸟一起学android4.0.3源码之硬件gps简单移植【转】
- 整理了20个数据可视化大屏,源码限时领取!
- 代码打累了看看短腿基!
- 哪款mac写python_新款Mac Pro有几个圈圈?写几行Python数一下
- 【目标检测算法】YOLO-V5实战检测VOC2007数据集
- Ltspice测量波形的相关数据
- 安卓车机能升级鸿蒙吗,华为鸿蒙系统能否应用到车机系统
- ElasticJob‐Lite:HTTP作业