本篇文章主要讲解一下如何用C#读取Excel文件到窗体


01

安装ExcelDataReader.DataSet程序包


1)选中项目文件夹,点击鼠标右键选择【管理NuGet程序包】


2)点击【浏览】在输入框输入【ExcelDataReader】,选中【ExcelDataReader.DataSet】,点击【安装】


3)点击【确定】


4)安装成功


02

应用举例


2.1 举例说明

1)点击画面的浏览按钮,将文件的全路径放到文本框中

2)点击下拉框选择需要显示的sheet名

3)对应的sheet显示到DataGridView控件中


2.2 制作UI界面

1)插入DataGridView控件


3)插入一个button/textbox/combox控件


2.3 代码编写

1)声明一个类

DataTableCollection tableCollection;


2)浏览按钮的单击事件

private void btnOpenDialog_Click(object sender, EventArgs e) { using (OpenFileDialog ofd = new OpenFileDialog() { Filter = "Excel 97-2003 workbook|*.xls|workbook|*.xlsx" }) { if (ofd.ShowDialog() == DialogResult.OK) { txtFileName.Text = ofd.FileName; using (var stream = File.Open(ofd.FileName, FileMode.Open, FileAccess.Read)) { using (IExcelDataReader reader = ExcelReaderFactory.CreateReader(stream)) { DataSet result = reader.AsDataSet(new ExcelDataSetConfiguration() { ConfigureDataTable = (_) => new ExcelDataTableConfiguration() { UseHeaderRow = true } }); tableCollection = result.Tables; cboSheet.Items.Clear(); foreach (DataTable table in tableCollection) { cboSheet.Items.Add(table.TableName); } } } } } }



3)下拉框选择事件,可以通过下拉框选择需要打开sheet

private void cboSheet_SelectedIndexChanged(object sender, EventArgs e) { DataTable dt = tableCollection[cboSheet.SelectedItem.ToString()]; dataGridView1.DataSource = dt; }


2.4 效果展示



以上就是本篇的全部内容感谢大家的观看,谢谢!

“ 诚实和勤勉,应该成为你终生的伴侣 ”-《富兰克林传》

苦逼的自动化同胞们,加油!加油!加油!你离成功就差点个赞了,^_^

点赞+在看

↓↓↓ ↓↓↓