• 通过Aspose.Cells.dll组件,实现多sheet导出Xls


      /// <summary>
        /// Excel导出写入
        /// </summary>
        public class ExcelHelper
        {
            /// <summary>
            /// 当前行号【从0开始】
            /// </summary>
            public int rowIndex = 0;
            /// <summary>
            /// Excel实例
            /// </summary>
            private Workbook book = null;
            /// <summary>
            /// 当前工作表
            /// </summary>
            private Worksheet sheet = null;
            /// <summary>
            /// 返回当前sheet一共有多少列
            /// </summary>
            public int MaxColCount
            {
                get
                {
                    return sheet.Cells.Columns.Count;
                }
            }
            /// <summary>
            /// 返回当前sheet一共有多少行
            /// </summary>
            public int MaxRowCount
            {
                get
                {
                    return sheet.Cells.Rows.Count;
                }
            }
            /// <summary>
            /// 创建一个新的Excel
            /// </summary>
            public ExcelHelper()
            {
                book = new Workbook();
                sheet = book.Worksheets[0];
            }
    
            /// <summary>
            /// 创建一个新的Excel
            /// </summary>
            public ExcelHelper(string excelpath)
            {
                book = new Workbook();
                book.LoadData(excelpath);
            }
            /// <summary>
            /// 选择工作表
            /// </summary>
            /// <param name="index"></param>
            public bool SelectWorkSheet(int index)
            {
                if (book.Worksheets != null && book.Worksheets.Count > index)
                {
                    sheet = book.Worksheets[0];
                    return true;
                }
                return false;
            }
            /// <summary>
            /// 选择工作表
            /// </summary>
            /// <param name="index"></param>
            public bool SelectWorkSheet(string sheetName)
            {
                if (book.Worksheets != null && book.Worksheets[sheetName] != null)
                {
                    sheet = book.Worksheets[sheetName];
                    return true;
                }
                return false;
            }
    
            /// <summary>
            /// 添加工作薄
            /// </summary>
            /// <param name="sheetName">工作薄名称</param>
            /// <returns></returns>
            public bool AddSheet(string sheetName)
            {
                if (sheet.Name == "Sheet1")
                { 
                    sheet.Name = sheetName;
                    return true;
                }
                sheet = book.Worksheets.Add(sheetName);
                return sheet == null;
            }
            /// <summary>
            /// 保存
            /// </summary>
            /// <param name="filename"></param>
            public void Save(string filename)
            {
                book.Save(filename);
            }
            /// <summary>
            /// 保存
            /// </summary>
            /// <param name="filename"></param>
            public void Save(System.IO.Stream sw)
            {
                book.Save(sw,FileFormatType.Excel2003);
            }
            /// <summary>
            /// 写入数据
            /// </summary>
            /// <param name="colIndex">起始列号</param>
            /// <param name="datas">数据数组</param>
            public void WriteData(int colIndex, params string[] datas)
            {
                if (datas == null)
                    return;
                foreach (string s in datas)
                {
                    sheet.Cells[rowIndex, colIndex].PutValue(s); 
                    colIndex++;
                }
            }
    
            /// <summary>
            /// 获取单元格的值
            /// </summary> 
            public string GetCellsValue(int colIndex)
            {
                Cell c = sheet.Cells[rowIndex, colIndex];
                if (c != null)
                  return c.Value.ToString();
                return "";
            }
        }
  • 相关阅读:
    drone 学习五 集成gitlab 配置以及简单测试
    ambassador kubernetes native api gateway
    使用distillery 实现版本的动态升级&& 动态降级
    使用distillery 构建专业的 phoenix 项目软件包
    mix deps HEX_HTTP_CONCURRENCY=1 HEX_HTTP_TIMEOUT=120 timeout
    elixir jenkins 集成构建方式配置
    phoenix 使用activerecord模式框架ecto 访问数据库
    phoenxi elixir 框架几个方便的命令
    phoenix elixir 框架简单试用
    k8s helm 私服chartmuseum minio s3 存储配置
  • 原文地址:https://www.cnblogs.com/you000/p/3009963.html
Copyright © 2020-2023  润新知