Пример #1
0
        private void Read(object fileName)
        {
            IStdWorkbook workbook = new NpoiWorkbook();

            workbook.Load(fileName.ToString());

            var t = workbook.WorkSheets.First().GetTableContent();

            MessageBox.Show("ok");
            //workbook.ReleaseReSource();
        }
Пример #2
0
        public void Test_Save()
        {
            IWorkbook workbook = new NpoiWorkbook(ExcelFormat.Xlsx);
            var       sheet    = workbook.InsertSheet("测试工作表");

            sheet.InsertRow(1);
            var cell = sheet.GetCell(1, 1);

            cell.SetValue("测试数值");
            cell.SetFontColor(Color.Yellow);
            cell.SetBackgroundColor(Color.Red);
            cell.Italic = true;
            cell.Bold   = true;
            workbook.Save("D:\\测试Npoi.xlsx");
        }
Пример #3
0
        /// <summary>
        /// 转换
        /// </summary>
        /// <typeparam name="TTemplate">导入模板类型</typeparam>
        /// <param name="options">导入选项配置</param>
        public virtual IWorkbook Convert <TTemplate>(IImportOptions options) where TTemplate : class, new()
        {
            CleanHeaderRowCache(options);
            var workbook      = new NpoiWorkbook();
            var innerWorkbook = GetWorkbook(options.FileUrl);

            if (options.MultiSheet == false)
            {
                BuildSheet <TTemplate>(workbook, innerWorkbook, options);
                return(workbook);
            }

            for (var i = 0; i < innerWorkbook.NumberOfSheets; i++)
            {
                BuildSheet <TTemplate>(workbook, innerWorkbook, options);
            }
            return(workbook);
        }
Пример #4
0
        /// <summary>
        /// 转换
        /// </summary>
        /// <typeparam name="TTemplate">导入模板类型</typeparam>
        /// <param name="fileUrl">文件地址</param>
        /// <param name="sheetIndex">工作表索引</param>
        /// <param name="headerRowIndex">标题行索引</param>
        /// <param name="dataRowStartIndex">数据行起始索引</param>
        /// <param name="multiSheet">是否支持多工作表模式</param>
        /// <param name="maxColumnLength">最大列长度</param>
        /// <param name="enabledEmptyLine">启用空行模式。启用时,行内遇到空行将抛出异常错误信息</param>
        public IWorkbook Convert <TTemplate>(string fileUrl, int sheetIndex = 0, int headerRowIndex = 0, int dataRowStartIndex = 1, bool multiSheet = false, int maxColumnLength = 100, bool enabledEmptyLine = false) where TTemplate : class, new()
        {
            var workbook      = new NpoiWorkbook();
            var innerWorkbook = GetWorkbook(fileUrl);

            if (multiSheet == false)
            {
                BuildSheet <TTemplate>(workbook, innerWorkbook, sheetIndex, headerRowIndex, dataRowStartIndex,
                                       maxColumnLength, enabledEmptyLine);
                return(workbook);
            }

            for (var i = 0; i < innerWorkbook.NumberOfSheets; i++)
            {
                BuildSheet <TTemplate>(workbook, innerWorkbook, i, headerRowIndex, dataRowStartIndex, maxColumnLength,
                                       enabledEmptyLine);
            }
            return(workbook);
        }
Пример #5
0
 public void Close()
 {
     NpoiWorkbook.Close();
 }