栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

netcore通用npoi导入excel

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

netcore通用npoi导入excel

        ///


        /// 获取excel文件内类容并转换成列表
        ///

        ///
        ///
        ///
        public List importExcel(IFormFile file) where T : new()
        {
            List _xlist = new List();
            Type _xtype = typeof(T);
            var _xproperties = _xtype.GetProperties();
            try
            {
                string _xfile = Path.GetExtension(file.FileName).ToLower();
                MemoryStream _ms = new MemoryStream();
                file.CopyTo(_ms);
                _ms.Seek(0, SeekOrigin.Begin);
                IWorkbook _xbook;
                if (_xfile == ".xlsx")
                {
                    _xbook = new XSSFWorkbook(_ms);
                }
                else if (_xfile == ".xls")
                {
                    _xbook = new HSSFWorkbook(_ms);
                }
                else
                {
                    _xbook = null;
                }
                ISheet _xsheet = _xbook.GetSheetAt(0);

                int _xCountRow = _xsheet.LastRowNum + 1;//获取总行数

                if (_xCountRow - 1 == 0)
                {
                    return _xlist;
                }

                for (int i = 1; i < _xCountRow; i++)
                {
                    //获取第i行的数据
                    var _xrow = _xsheet.GetRow(i);
                    if (_xrow != null)
                    {
                        T xmodel = Activator.CreateInstance();
                        //循环的验证单元格中的数据
                        for (int j = 0; j < _xproperties.Length; j++)
                        {
                            var _xproperty = _xproperties[j];
                            _xproperty.SetValue(xmodel, _xrow.GetCell(j) != null ? _xrow.GetCell(j).ToString() : string.Empty, null);
                        }
                        _xlist.Add(xmodel);
                    }
                }
                return _xlist;
            }
            catch (Exception e)
            {
                return _xlist;
            }
        }

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/658657.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号