WinForm 读取Excel 数据显示到窗体中
最近教学中,需要用到WinForm 读取Excel数据,于是就做了一个简单的,废话不多说,直接codding...
//读取Excel的帮助类
class SqExcellHelper
{
public static DataTable GetData(string tablename)
{
DataTable dtEmp = new DataTable(tablename);
OleDbConnection con = new OleDbConnection();
// Persist Security Info 布尔类型.为True时,表明采用集成安全机制;若为False,则表明不采用集成安全机制。
//con.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;" +
//"Data Source = Employee.xlsx;Persist Security Info=False;Mode=ReadWrite;Extended Properties=Excel 8.0"; //string strConn = "Provider=Microsoft.Ace.OleDb.12.0;" + "data source=" + Server.MapPath("ExcelFiles/Mydata2007.xlsx") + ";
//Extended Properties='Excel 12.0; HDR=Yes; IMEX=1'";
//此连接可以操作.xls与.xlsx文件 (支持Excel2003 和 Excel2007 的连接字符串)
//备注: "HDR=yes;"是说Excel文件的第一行是列名而不是数据,"HDR=No;"正好与前面的相反。
// "IMEX=1 "如果列中的数据类型不一致,使用"IMEX=1"可必免数据类型冲突。 // 注: 根据需求,这里的Data Source 是数据源;根据需要改成你需要的文件名称 * con.ConnectionString = "Provider=Microsoft.Ace.OleDb.12.0;" +
"Data Source = prize.xls;Extended Properties='Excel 12.0; HDR=Yes; IMEX=1';"; try
{ con.Open();
//string sql = "Select * from [Sheet1$]";
OleDbDataAdapter da = new OleDbDataAdapter("Select * from [Sheet1$]", con);
da.Fill(dtEmp);
}
catch (Exception ex)
{ Console.WriteLine(ex.Message);
}
finally
{
con.Close();
}
return dtEmp;
}
这里没有用到三层,后面的代码就是直接加载数据到WinForm数据控件中,代码如下:
/// <summary>
/// 窗体加载事件
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void MainYJ_Load(object sender, EventArgs e)
{ string sql = "Select * from [Sheet1$]";
DataTable dtp = SqlHelper.GetData(sql);
this.dataGridView1.DataSource = dtp;
int randnum = (dtp.Rows.Count - );
this.textBox1.Text = dtp.Rows[randnum]["奖品名称"].ToString(); }
效果图:
由于WinForm 实际开发中,用的不太多,这里只是做了一个简单的Demo,如果有错误,请原子中的朋友指出,谢谢!
相关链接:http://blog.csdn.net/pan_junbiao/article/details/8872936
WinForm 读取Excel 数据显示到窗体中的更多相关文章
- C#读取Excel显示到repeater中
		首先需要一个用来存储我们需要显示的内容,防止页面回发丢失(添加时使用) #region 缓存文件 private DataTable excelData; /// <summary> // ... 
- thinkphp用phpexcel读取excel,并修改列中的值,再导出excel,带往excel里写入图片
		<?php class GetpriceAction extends AdministratorAction { // 文件保存路径 protected $savepath; // 允许上传的文 ... 
- Python用xlrd读取Excel数据到list中再用xlwt把数据写入到新的Excel中
		一.先用xlrd读取Excel数据到list列表中(存入列表中的数据如下图所示) import xlrd as xd #导入需要的包 import xlwt data =xd.open_workboo ... 
- C#读取excel数据到datatable中
		DataTable dtGBPatient = new DataTable(); string strConn;string excelName; //注意:把一个excel文件看做一个数据库,一个s ... 
- winform 读取TXT文件 放在Label中                                                    分类:            WinForm             2014-07-31 09:56    310人阅读    评论(0)    收藏
		<span style="font-family: Arial, Helvetica, sans-serif;">#region 读取TXT 文件,放到Label中&l ... 
- .net读取excel数据到DataSet中
		Dim objExcelFile As Excel.Application Dim objWorkBook As Excel.Workbook Dim objSheet As Excel.Worksh ... 
- 读取Excel文件到DataTable中
		private static string[] GetExcelSheetNames(OleDbConnection conn) { DataTable dtbSh ... 
- c#dev操作读取excel方法
		一:使用spreadsheetControl1 方法 1:打开excel; private void barButtonItem1_ItemClick(object sender, DevExpres ... 
- C#读取Excel技术概览
		参考文章 C#读取Excel的五种方式体会 1. OleDb 用这种方法读取Excel速度还是非常的快的,但这种方式读取数据的时候不太灵活.不过可以在 DataTable 中对数据进行一些删减.修改. ... 
随机推荐
- C#入门篇-3:数据类型及转换
			using System; using System.Text; using System.Collections; using System.Collections.Generic; //003 查 ... 
- Selenium中自动输入10位随机数字的方法
			有时候项目中需要输入快递号,对于已输入过的快递单号则不能再次输入,这种问题怎么解决呢,可以看下这个方法 public static final String ALLCHAR = "01234 ... 
- python 学习分享-实战篇简单的ftp
			import socket import os import time import pickle Basedb = os.path.dirname(os.path.dirname(os.path.a ... 
- 一个iOS程序员眼中的跨域问题
			摘要: 跨域问题是web开发领域一个常见的问题,相信每个web开发者都遇到"跨域"的问题 最近公司的iOS开发任务比较少,所以自己最近开始了Web开发的任务,在用H5做了很多页面, ... 
- [译]tar打包时忽略某些文件夹内容
			使用tar的 --exclude的选项 $ tar --exclude='./folder' --exclude='./upload/folder2' -zcvf /backup/filename.t ... 
- Could not connect to Redis at 127.0.0.1:6379: Connection refused
			启动redis: redis-server ../redis.conf redis启动成功后 执行命令行redis-cli报:Could not connect to Redis at 127.0. ... 
- Callable、Future、FutureTask_笔记
			参考:http://blog.csdn.net/javazejian/article/details/50896505 1.Callable<V>接口 Runnable接口 public ... 
- Codeforces Round #363 (Div. 2) C    dp或贪心 两种方法
			Description Vasya has n days of vacations! So he decided to improve his IT skills and do sport. Vasy ... 
- Activity启动创建 (AcitivtyManageService,ActivityThread,Activity)
			ActivityThead,ActivityManagerService,Activity <<Android内核剖析>>中有一章节专门介绍 Activity框架和管理结构A ... 
- 短文对话的神经反应机 -- Neural Responding Machine for Short-Text Conversation学习笔记
			最近学习了一篇ACL会议上的文章,讲的是做一个短文对话的神经反映机, 原文: 会议:ACL(2015) 文章条目: Lifeng Shang, Zhengdong Lu, Hang Li: Ne ... 
