public void WriteToExcel(string path, string sheetName, string[,] content)
        {
            ExcelStream    stream = new ExcelStream();
            ExcelWriteArgs args   = new ExcelWriteArgs();

            args.Path      = path;
            args.SheetName = sheetName;
            args.Content   = content;
            stream.WriteResource(args);
        }
示例#2
0
        private bool WriteExcel(ExcelWriteArgs data)
        {
            FileInfo newFile = new FileInfo(data.Path);

            if (!newFile.Exists)
            {
                //创建一个新的excel文件
                newFile.Delete();
                newFile = new FileInfo(data.Path);
                using (ExcelPackage package = new ExcelPackage(newFile))
                {
                    //在excel空文件添加新sheet
                    ExcelWorksheet worksheet = package.Workbook.Worksheets.Add(data.SheetName);
                    //添加列名

                    int columnNum = data.Content.GetLength(1);
                    int rowNum    = data.Content.Length / columnNum;
                    DebugUtils.DebugError(rowNum.ToString());
                    DebugUtils.DebugError(columnNum.ToString());
                    for (int i = 0; i < rowNum; i++)
                    {
                        for (int j = 0; j < columnNum; j++)
                        {
                            worksheet.Cells[i + 4, j + 4].Value = data.Content[i, j];
                        }
                    }
                    //保存excel
                    package.Save();
                }
            }
            else
            {
                using (ExcelPackage package = new ExcelPackage(newFile))
                {
                    ExcelWorksheet worksheet = null;
                    //在excel空文件添加新sheet
                    for (int i = 1; i <= package.Workbook.Worksheets.Count; i++)
                    {
                        if (package.Workbook.Worksheets[i].Name == data.SheetName)
                        {
                            worksheet = package.Workbook.Worksheets[i];
                            break;
                        }
                    }
                    if (worksheet == null)
                    {
                        worksheet = package.Workbook.Worksheets.Add(data.SheetName);
                    }

                    //添加列名

                    int columnNum = data.Content.GetLength(1);
                    int rowNum    = data.Content.Length / columnNum;
                    for (int i = 0; i < rowNum; i++)
                    {
                        for (int j = 0; j < columnNum; j++)
                        {
                            worksheet.Cells[i + 4, j + 1].Value = data.Content[i, j];
                        }
                    }
                    //保存excel
                    package.Save();
                }
            }
            return(true);
        }