1、首先引用添加Aspose.Cells.dll
2、然后是读取Excel数据到dataguidview中显示
private void button1_Click(object sender, EventArgs e)
{
try
{
DataTable dt = null;
// 读取Excel第一个sheet的数据到DataTable
string FileName = "";
OpenFileDialog openFileDialog1 = new OpenFileDialog();
openFileDialog1.Filter = "excel2003 files (*.xls)|*.xls|excel2007 files (*.xlsx)|*.xlsx|All files (*.*)|*.*"; //所有的文件格式
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
FileName = openFileDialog1.FileName;
// 你的 处理文件路径代码
Workbook book = new Workbook();
book.Open(FileName);
Worksheet sheet = book.Worksheets[0];
Cells cells = sheet.Cells;
dt = cells.ExportDataTableAsString(0, 0, cells.MaxDataRow + 1, cells.MaxDataColumn+1, true);
}
if (FileName == "")
{
return;
}
//设置数据源,部分显示数据
dataGridView1.DataSource = dt; //dataGridView1是dataguidview控件,先拉个控件在form
dataGridView1.AutoGenerateColumns = false;
}
catch (Exception ex)
{
MessageBox.Show(ex.Message, "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
}
}
3、然后是读取dataguidview中的数据插入到数据库
private void button2_Click(object sender, EventArgs e)
{
DataTable table = (DataTable)dataGridView1.DataSource;//数据源
// string id = table.Rows[e.RowIndex][0].ToString();
string data = "";
for (int i = 0; i < table.Rows.Count; i++)
{
data = table.Rows[i][0].ToString();//这样取值
data = table.Rows[i][1].ToString();//这样取值
string sql = ""; //然后写sql语句自己插入
}
}
dataguidview显示是这样