C#创建、读取和修改Excel的方法
作者:令狐不聪 时间:2023-02-24 06:28:16
本文实例讲述了C#创建、读取和修改Excel的方法。分享给大家供大家参考。具体如下:
windows下我们可以通过 Jet OLE DB访问Excel,就行访问数据库一样
// Namespaces, Variables, and Constants
using System;
using System.Configuration;
using System.Data;
private OleDbDataAdapter da;
private DataTable dt;
private void Excel_Load(object sender, System.EventArgs e)
{
// Create the DataAdapter.
da = new OleDbDataAdapter("SELECT * FROM [Sheet1$]", ConfigurationSettings.AppSettings["ExcelConnectString1"]);
// Create the insert command.
String insertSql = "INSERT INTO [Sheet1$] (CategoryID, CategoryName, Description) VALUES (?, ?, ?)";
da.InsertCommand = new OleDbCommand(insertSql, da.SelectCommand.Connection);
da.InsertCommand.Parameters.Add("@CategoryID", OleDbType.Integer, 0, "CategoryID");
da.InsertCommand.Parameters.Add("@CategoryName", OleDbType.Char, 15, "CategoryName");
da.InsertCommand.Parameters.Add("@Description", OleDbType.VarChar, 100, "Description");
// Create the update command.
String updateSql = "UPDATE [Sheet1$] SET CategoryName=?, Description=? " WHERE CategoryID=?";
da.UpdateCommand = new OleDbCommand(updateSql, da.SelectCommand.Connection);
da.UpdateCommand.Parameters.Add("@CategoryName", OleDbType.Char, 15, "CategoryName");
da.UpdateCommand.Parameters.Add("@Description", OleDbType.VarChar, 100, "Description");
da.UpdateCommand.Parameters.Add("@CategoryID", OleDbType.Integer, 0, "CategoryID");
// Fill the table from the Excel spreadsheet.
dt = new DataTable( );
da.Fill(dt);
// Define the primary key.
dt.PrimaryKey = new DataColumn[] {dt.Columns[0]};
// Records can only be inserted using this technique.
dt.DefaultView.AllowDelete = false;
dt.DefaultView.AllowEdit = true;
dt.DefaultView.AllowNew = true;
// Bind the default view of the table to the grid.
dataGrid.DataSource = dt.DefaultView;
}
private void updateButton_Click(object sender, System.EventArgs e)
{
da.Update(dt);
}
希望本文所述对大家的C#程序设计有所帮助。
标签:C#,Excel
0
投稿
猜你喜欢
SpringBoot 2.x整合Log4j2日志的详细步骤
2022-08-05 09:50:19
怎样使用PowerMockito 测试静态方法
2022-06-18 08:28:59
Opencv EigenFace人脸识别算法详解
2023-07-21 19:30:17
SpringBoot后端上传文件类型检测方式
2021-07-02 05:00:04
C#使用GDI绘制直线的方法
2022-08-16 09:45:17
java实现发送邮件的示例代码
2023-07-04 17:00:54
java 如何远程控制tomcat启动关机
2023-04-10 03:21:47
Junit测试多线程无法得到结果的问题解决
2023-01-01 22:12:52
Android需要提升权限的操作方法
2021-07-17 11:25:47
JAVA反射机制实例详解
2021-11-08 13:39:34
SpringBoot 添加本地 jar 文件的操作步骤
2022-03-09 21:36:11
Unity打开淘宝app并跳转到商品页面功能的实现方法
2023-06-17 01:05:18
举例分析Python中设计模式之外观模式的运用
2021-11-24 01:54:48
Java简单高效实现分页功能
2022-05-24 13:56:02
SpringBoot之webflux全面解析
2022-09-27 12:07:20
java控制台输出百分比进度条示例
2023-08-21 22:58:20
SpringBoot中的Aop用法示例详解
2023-03-31 14:12:00
安卓中出现过的一些容易被忽略的异常整理
2023-12-17 06:27:53
C#多线程之线程池ThreadPool用法
2021-07-21 06:28:40
Android Studio设置绘制布局时的视图
2021-09-05 08:15:46