首页 新闻 会员 周边 捐助

求一个使用Aspose.cells控件将Excel数据导入到SQL SERVER的方法

0
悬赏园豆:50 [已解决问题] 解决于 2014-02-08 14:06

求一个使用Aspose.cells控件将Excel数据导入到SQL SERVER的方法,谢谢大家!!

小Jerry小耗子的主页 小Jerry小耗子 | 初学一级 | 园豆:157
提问于:2014-01-25 10:27
< >
分享
最佳答案
0

1.aspose.cells是收费的!当然也有破解的,如果是单纯是将excel数据导入导出用npoi就可以了

2.npoi简单代码

using (FileStream fs = File.OpenRead("1.xlsx")) {
                IWorkbook wk = new XSSFWorkbook(fs);  //读取03的xls               
                //IWorkbook wk = new HSSFWorkbook(); //读取07之xlsx
                for (int i = 0; i < wk.NumberOfSheets; i++) {
                    ISheet sheet = wk.GetSheetAt(i);
                    Console.WriteLine("============{0}==Start============", sheet.SheetName);
                    for (int j = 0; j <= sheet.LastRowNum; j++) {
                        IRow row = sheet.GetRow(j);
                        for (int k = 0; k < row.LastCellNum; k++) {
                            ICell cell = row.GetCell(k);
                            Console.WriteLine(cell.ToString() + "\t");
                        }
                    }
                    Console.WriteLine("============{0}==End==============", sheet.SheetName);
                }
            }
收获园豆:30
秋壶冰月 | 大侠五级 |园豆:5903 | 2014-01-25 12:58

谢谢!可是是必须要用aspose.cells,请问知道在MVC的模式下知道怎么处理吗?

小Jerry小耗子 | 园豆:157 (初学一级) | 2014-01-25 14:54

@小Jerry小耗子: 去这里看看http://www.cnblogs.com/muer/p/asposecell_linechart.html

秋壶冰月 | 园豆:5903 (大侠五级) | 2014-01-25 15:39

@秋壶冰月: 谢谢!得到的数据怎么更新至数据库知道怎么处理吗?

小Jerry小耗子 | 园豆:157 (初学一级) | 2014-01-26 14:51
其他回答(1)
0
 //先加载文件
            var book = new Workbook("OpenXml.xlsx");
            //获取指定的sheet
            var sheet = book.Worksheets["OpenXml"];
            // sheet.QueryTables.
            var cells = sheet.Cells;
            var rowCount = cells.MaxDataRow;//行数
            var colCount = cells.MaxDataColumn;//列数
            //构造DataTable和添加列
            var dt = new DataTable("ImportTable");
            dt.Columns.Add("col1");
            dt.Columns.Add("col2");
            dt.Columns.Add("col3");

            for (var i = 0; i < rowCount; i++)
            {
                var paList = new List<object>();
                for (var j = 0; j < 3; j++)//这里处理三个列
                {
                    paList.Add(cells[i, j]);
                }
                dt.Rows.Add(paList);
            }
            //这里都是DataTable了,那么后续的导入,我只能呵呵了。

部分代码,仅供参考。

收获园豆:20
幻天芒 | 园豆:37207 (高人七级) | 2014-01-26 13:58

 谢谢!得到的数据怎么更新至数据库知道怎么处理吗?

支持(0) 反对(0) 小Jerry小耗子 | 园豆:157 (初学一级) | 2014-01-26 14:52

@小Jerry小耗子: DataTable到数据库的方式太多了,你可以用DataSet的Update方法,也可以用SqlBulkCopy的大数据导入方案。

支持(0) 反对(0) 幻天芒 | 园豆:37207 (高人七级) | 2014-01-26 22:43
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册