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.Windows.Forms;
\\在窗体上放一个按钮和一个datagridview。
namespace WindowsFormsApp3
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog();
if (ofd.ShowDialog() == DialogResult.OK)
{
string excelpath = ofd.FileName;
dataGridView1.DataSource = ReadFromExcel(excelpath);
}
}
private DataTable ReadFromExcel(string excelpath)
{
string sExt = System.IO.Path.GetExtension(excelpath);
string sConn =null;
if (sExt == ".xlsx")\\2007以上版本
{
sConn = "Provider=Microsoft.ACE.OLEDB.12.0;" + "Data Source=" + excelpath + ";" + "Extended Properties='Excel 12.0;HDR=YES'";
}
else if (sExt == ".xls") \\2003版本
{
sConn = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + excelpath + ";" + "Extended Properties=Excel 8.0";
}
else
{
throw new Exception("文件类型不对,请核对");
}
OleDbConnection oledbConn = new OleDbConnection(sConn);
oledbConn.Open();
OleDbDataAdapter command = new OleDbDataAdapter("SELECT * FROM [Sheet1$]", oledbConn);
DataSet ds = new DataSet();
command.Fill(ds);
oledbConn.Close();
return ds.Tables[0];
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.Windows.Forms;
using Excel = Microsoft.Office.Interop.Excel;
\\COM类型读取
using System.Data.OleDb;\\ADO模式读取\\在窗体上放一个按钮和一个datagridview。
namespace WindowsFormsApp3
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
OpenFileDialog ofd = new OpenFileDialog();
if (ofd.ShowDialog() == DialogResult.OK)
{
string excelpath = ofd.FileName;
dataGridView1.DataSource = ReadFromExcel(excelpath);
}
}
private DataTable ReadFromExcel(string excelpath)
{
string sExt = System.IO.Path.GetExtension(excelpath);
string sConn =null;
if (sExt == ".xlsx")\\2007以上版本
{
sConn = "Provider=Microsoft.ACE.OLEDB.12.0;" + "Data Source=" + excelpath + ";" + "Extended Properties='Excel 12.0;HDR=YES'";
}
else if (sExt == ".xls") \\2003版本
{
sConn = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + excelpath + ";" + "Extended Properties=Excel 8.0";
}
else
{
throw new Exception("文件类型不对,请核对");
}
OleDbConnection oledbConn = new OleDbConnection(sConn);
oledbConn.Open();
OleDbDataAdapter command = new OleDbDataAdapter("SELECT * FROM [Sheet1$]", oledbConn);
DataSet ds = new DataSet();
command.Fill(ds);
oledbConn.Close();
return ds.Tables[0];
}
}