private void Form1_Load(object sender, EventArgs e)
FileInfo file=new FileInfo ("data.xlsx");
DataTable dt = null;
var package = new ExcelPackage(file);
ExcelWorkbook workbook = package.Workbook;
if (workbook !=null )
if (workbook .Worksheets .Count >0)
ExcelWorksheet worksheet = workbook.Worksheets.First();
dt = WorksheetToTable(worksheet);
dataGridView1.DataSource = dt;
listView1.Columns.Add("序号", 160, HorizontalAlignment.Center);
listView1.Columns.Add("值", 160, HorizontalAlignment.Center);
//数据表转数组
string[] arr = new string[dt.Columns .Count ];
for (int i = 0; i < dt.Rows .Count ; i++)
for (int j = 0; j < dt.Columns .Count ; j++)
arr[j] = dt.Rows[i][j].ToString();
listView1.Items.Add(new ListViewItem(arr));
private static DataTable WorksheetToTable(ExcelWorksheet worksheet)
//获取worksheet的行数
int rows = worksheet.Dimension.End.Row;
//获取worksheet的列数
int cols = worksheet.Dimension.End.Column;
DataTable dt = new DataTable(worksheet.Name);
DataRow dr = null;
DataColumn dc = null;
dc = dt.Columns.Add("序号");
dc = dt.Columns.Add("值");
for (int i = 1; i <= rows ; i++)
if (i>=1)
dr = dt.Rows.Add();
for (int j = 1; j <= cols; j++)
dr[j-1] = worksheet.Cells[i, j].Value.ToString();
catch (Exception ex)
MessageBox.Show(ex.Message);
return dt;
在这个程序中,注意datatable的数据转换,读取的Excel数据转到datatable,datatable转换为数组。
代码下载链接:https://download.csdn.net/download/yue1453544229/10464609
using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Threading.Tasks;using System.W...
/// DataTable to
Excel
(将数据表
中
的数据
读取
到
excel
格式内存
中
)
/// </summary>
/// <param name="dataTable">数据表</param>
/// <param name="...
今天一个线上项目反应导入
excel
文件时,网页直接卡死,导入
excel
文件时失败,经过一步一步的验证发现是在
读取
excel
文件时卡死,此项目使用的是phpoffice/php
excel
拓展,最后发现是在执行load方法加载
excel
文件时出现卡死,之前在导入
excel
文件一直是正常的,而且
excel
中
的数据也不是很多,到底是由于什么原因造成的呢?
最后在查找phpoffice/php
excel
官方文档
中
发现,这是由于
excel
文件
中
存在了某些特殊字符导致了加载
excel
文件时崩溃,既然找到了原因,就一定有
你要明白,任何问题都不是孤立存在的,一定有人曾经遇到过,并且已经有更好的解决办法了,只是我还不知道。我不应该在黑暗中独自前行,去重新发明轮子,也许我的顿悟,只是别人的基本功!我应该要站在巨人的肩膀上,学习更成熟的经验和方法,然后再来解决这个问题
04-17
本篇文章通过ASP.NET Core的
EPPlus
包去操作
Excel
(导入导出),其使用原理与NPOI类似,导出
Excel
的时候不需要电脑上安装office,非常好用
新建一个ASP.NET Core Web应用程序(模型视图控制器),还有一个类库,SDK2.1版本,解决方案如下
3.在
EPPlus
Common类库
中
创建一个
EPPlus
H...
using
Excel
= Microsoft.Office.Interop.
Excel
;
using System.Windows.Forms;
namespace Read
Excel
public Stream DataTableTo
Excel
(DataTable dataTable, string[] columns, string sheetName)
using (
Excel
Package pck = new...
EPPlus
是.net的一个操作
Excel
的插件,封装了针对
Excel
的
读取
、
写入
等操作,并且该项目还是开源的。关于
EPPlus
的更多介绍我就不赘述了,可查看:http://
epplus
.codeplex.com/
这里我简单的介绍如何将
Excel
的Sheet转换成DataTable,关于安装和其他的相关操作请谷歌或者百度下。
using System;
using System.Coll...
当我们用
EPPlus
导入
Excel
数据到DataTable
中
,如果某列是DateTime格式 ,我们应该如何处理呢?
解决思路:
1、首先要获取
excel
中
的列的格式类型
2、判断格式类型是否是日期时间
关键代码如下:
public static DataTable
Excel
ToDt(string filePath, bool isSkipFirstRow, int cols, s
### 回答1:
可以使用C#
中
的OleDbConnection和OleDbDataAdapter类来
读取
Excel
文件,并将数据填充到
DataGridView
控件
中
。
以下是一个示例代码:
```csharp
string connectionString = "Provider=Microsoft.ACE.OLEDB.12.;Data Source=your_
excel
_file.xlsx;Extended Properties='
Excel
12.;HDR=YES;IMEX=1;'";
string query = "SELECT * FROM [Sheet1$]";
OleDbConnection conn = new OleDbConnection(connectionString);
OleDbDataAdapter adapter = new OleDbDataAdapter(query, conn);
DataTable dt = new DataTable();
adapter.Fill(dt);
dataGridView
1.DataSource = dt;
其
中
,connectionString是连接字符串,需要根据你的
Excel
文件路径和版本进行修改;query是查询语句,[Sheet1$]表示
读取
Excel
文件
中
的第一个工作表。
通过OleDbDataAdapter的Fill方法将数据填充到DataTable
中
,再将DataTable作为
DataGridView
的数据源即可。
### 回答2:
抱歉,很抱歉我无法回答这个问题。因为只给出了一个字母,并没有提供任何上下文或信息,我无法理解“c”代表什么意思。如果您能提供更多信息,我将尽力回答您的问题。
### 回答3:
C是一种高级编程语言,由Dennis Ritchie在贝尔实验室发明。C语言是一种结构化语言,具有丰富的语法和功能。它是一种静态类型的编程语言,可在大多数计算机上使用,包括嵌入式系统和超级计算机。
C语言的优点在于它具有高效性和可移植性。它使用简单的语法和指令,运行速度非常快。C语言编写的程序通常比使用其他编程语言编写的程序更节约计算机资源。C语言还支持高级编程技术,如指针和递归,这些技术可以让程序在内存使用方面更加灵活。
C语言有广泛的应用场景。它可以用于编写系统软件,如操作系统和编译器。它还可以用于编写应用程序,如数据库和网络应用程序。我们还可以使用C语言编写游戏和嵌入式控制应用程序。
C语言不仅是一种强大的编程语言,而且它的语法和概念也为其他高级编程语言打下了基础。例如,C++和Java语言是基于C语言设计的。这意味着,如果您学习C语言,您将对许多其他编程语言的工作原理和语法有所了解。
总而言之,C语言是一种非常强大和有用的编程语言,它有许多优点和广泛的应用场景。无论您是初学者还是有经验的程序员,学习C语言都是一项很有价值的技能。