作业要求:
读取ex03_demo.xls文件中的“
姓名”和“作业网址”,保存到文本文件中(文件名:ex03_demo.txt)。
以下是源代码:
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;
using System.Collections;
using System.Data.OleDb;
using System.IO;
namespace WindowsFormsApplication35
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{ //打开文件,默认.xls文件
OpenFileDialog openfile = new OpenFileDialog();
openfile.Filter = "工作薄(*.xls)|*.xls|所有文件(*.*)|*.*";
if (openfile.FilterIndex == 1 && openfile.ShowDialog() == DialogResult.OK) //如果成功打开文件
ExcelToDS(openfile.FileName);
}
public DataSet ExcelToDS(string path)
{ //在这里把excel文件看成是数据源,以提取数据
string strConn = "Provider=Microsoft.Jet.OLEDB.4.0;" + "Data Source=" + @path + ";" + "Extended Properties=Excel 8.0;";
OleDbConnection conn = new OleDbConnection(strConn);
string strExcel = "";
OleDbDataAdapter myCommand = null;
DataSet ds = null; //设一个数据集,先设为空
strExcel = "select * from [sheet1$]"; //查询sheet1表中的所有数据
myCommand = new OleDbDataAdapter(strExcel, strConn); //建立连接
DataTable table1 = new DataTable();
ds = new DataSet(); //填充数据集
myCommand.Fill(table1);
dataGridView1.DataSource = table1;
return ds;
}
}
}
下面是运行效果:
为了防止文件内容过多,在datagridview属性中anchor的四周全选,让显示界面随着窗口改动而改动
以下是窗体构造
打开文件,选择要求的excel文件,打开
结果如下:
由于窗体设置的时候比较小,调整窗口大小,如下: