日期:2014-05-18  浏览次数:20881 次

如何将Excel写入datatable
在网上看了很多例子,几乎都是用OleDbConnection类来实现的,有没有其他方法写入datatable,因为我这个项目是“智能设备”,添加不了System.Data.OleDb引用,小弟新手,望大师指点下。

------解决方案--------------------
什么OS的智能设备
------解决方案--------------------
你可以看看那个.NET的office开源项目NPOI看看移动设备有没有限制?
------解决方案--------------------
是用sqlce 数据库吗? 语法都是差不多的呀
------解决方案--------------------
语法都是差不多的.
------解决方案--------------------
windows ce的项目用sqlce啊,sqlite也应该可以,看看有没有对应支持的版本
------解决方案--------------------
不用数据库用Excel保存数据?
------解决方案--------------------
C# code
  /// <summary>
        /// 解析Excel,返回DataTable
        /// </summary>
        /// <param name="fileName"></param>
        /// <returns></returns>
        public static System.Data.DataTable ImpExcel(string fileName)
        {
            System.Data.DataTable dt = new System.Data.DataTable();
            try
            {
                Microsoft.Office.Interop.Excel.Application app;
                Workbooks wbs;
                Worksheet ws;
                app = new Microsoft.Office.Interop.Excel.Application();
                wbs = app.Workbooks;
                wbs.Add(fileName);
                ws = (Worksheet)app.Worksheets.get_Item(1);
                int a = ws.Rows.Count;
                int b = ws.Columns.Count;
                string name = ws.Name;
                    for (int i = 1; i < 行数; i++)
                    {
                        DataRow dr = dt.NewRow();
                        for (int j = 1; j <= 列数; j++)
                        {
                            Range range = ws.get_Range(app.Cells[i, j], app.Cells[i, j]);
                            range.Select();
                            dr[j - 1] = app.ActiveCell.Text.ToString();
                        }
                        dt.Rows.Add(dr);
                KillProcess(app);
                return dt;
            }
            catch (Exception ex)
            {
                MessageBox.Show("数据绑定Excel失败! 失败原因:Excel格式不正确!", "提示信息", MessageBoxButtons.OK, MessageBoxIcon.Information);
                return dt;
            }
        }

参考 [url=http://blog.csdn.net/happy09li/article/details/7431967][/url]