如何在c#中使用OleDb在excel文件中获取所需的单元格数据?

时间:2012-03-14 09:04:54

标签: c# xml excel-2007 excel-2003

实际上我正在尝试将excel文件数据转换为xml文件。我的要求是我需要从excel获取所需的单元格数据,我可以根据我的要求编辑xml标签。有可能?????

是不是用这种方式写OleDb ????

这是我的代码:

    private void button1_Click(object sender, EventArgs e)
    {
        try
        {
            System.Data.OleDb.OleDbConnection MyConnection;
            System.Data.DataSet ds;
            System.Data.OleDb.OleDbDataAdapter MyCommand;

            MyConnection = new System.Data.OleDb.OleDbConnection("provider=Microsoft.Jet.OLEDB.4.0;Data Source='C:\\Desktop\\xl2xml\\test_2003.xls';Extended Properties=Excel 8.0;");

            MyCommand = new System.Data.OleDb.OleDbDataAdapter("select * from [Sheet1$]", MyConnection);
            //MyCommand.TableMappings.Add("Table", "Product");

            MyCommand.TableMappings.Add("Table", "Myrequireddata from required cell");  

            ds = new System.Data.DataSet();
            MyCommand.Fill(ds);
            MyConnection.Close();
            ds.WriteXml(@"C:\Desktop\xl2xml\Product.xml");
        }

        catch (Exception ex)
        {
            MessageBox.Show(ex.ToString());
        }
   }

1 个答案:

答案 0 :(得分:0)

当然可以。我之前做过同样的事情。你的概念是正确的。在这里,我使用Microsoft DAO 3.6对象库来读取excel文件。

但是,您可以将excel文件读入数据集,然后您可以浏览数据集对象以查找所需数据。