C#读取和导出EXCEL类库(可操作多个SHEET)

本文介绍了一个改进的Excel操作类,该类能够实现Excel文件的读取与导出功能,且无需安装Office等额外软件。文章通过示例代码详细展示了如何使用这个类来遍历并读取Excel文件中的多个Sheet内容,以及如何创建新的Excel文件并填充数据。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

改进的一个EXCEL类,可以读取EXCEL,也可以将内容导出到EXCEL.操作多个SHEET比较方便.
而且无须安装任何EXCEL.
1.读取.

[csharp]  view plain  copy
  1. public   void Read(string FileName)  
  2.     {  
  3.         AppLibrary.ReadExcel.Workbook workbook = null;  
  4.         workbook = AppLibrary.ReadExcel.Workbook.getWorkbook(FileName);  
  5.         int k = 0;  
  6.         System.Text.StringBuilder sb = new System.Text.StringBuilder();  
  7.         foreach (AppLibrary.ReadExcel.Sheet sheet in workbook.Sheets)  
  8.         {  
  9.             k++;  
  10.             sb.Append("当前为第" + k + "个Sheet<br/><br/>");  
  11.             sb.Append("<table class='scroll' cellpadding=0 cellspacing=0>");  
  12.             for (int iRow = 0; iRow < sheet.Rows; iRow++)  
  13.             {  
  14.                 sb.Append("<tr>");  
  15.                 sb.Append("<td>");  
  16.                 sb.Append("当前为第" + (iRow + 1) + "行");  
  17.                 sb.Append("</td>");  
  18.                 for (int iCol = 0; iCol < sheet.Columns; iCol++)  
  19.                 {  
  20.                     AppLibrary.ReadExcel.Cell cell = sheet.getCell(iCol, iRow);  
  21.                     object val = cell.Value;  
  22.                     
  23.                     string cellValue = (val != null) ? val.ToString() : "";  
  24.                       
  25.                     sb.Append("<td>");  
  26.                     sb.Append(cellValue);  
  27.                     sb.Append("</td>");  
  28.                      
  29.                 }  
  30.                 sb.Append("</tr>");  
  31.             }  
  32.             sb.Append("</table><br/><br/>");  
  33.         }  
  34.         Response.Write(sb.ToString());  
  35.   
  36.     }  


读取的EXCEL:

读取后:

导出:

public void ToExcel()
    {
        AppLibrary.WriteExcel.XlsDocument doc = new AppLibrary.WriteExcel.XlsDocument();
        doc.FileName = "Report.xls";
        string SheetName = string.Empty;
        //记录条数
        int mCount = 55;
        //每个SHEET的数量
        int inv = 10;
        //计算当前多少个SHEET
        int k = Convert.ToInt32(Math.Round(Convert.ToDouble(mCount / inv))) + 1;

        for (int i = 0; i < k; i++)
        {
            SheetName = "当前是SHEET" + i.ToString();
            AppLibrary.WriteExcel.Worksheet sheet = doc.Workbook.Worksheets.Add(SheetName);
            AppLibrary.WriteExcel.Cells cells = sheet.Cells;
            //第一行表头
            cells.Add(11"序号");
            cells.Add(12"准考证号");
            cells.Add(13"考生姓名");
            cells.Add(14"性别");
            cells.Add(15"报考专业");
            int f = 1;
            for (int m = i * inv; m < mCount && m < (i + 1) * inv; m++)
            {
                f++;
                cells.Add(f, 1, f - 1);
                cells.Add(f, 2, f);
                cells.Add(f, 3"woody.wu");
                cells.Add(f, 4"");
                cells.Add(f, 5"经济学");
            }
        }
        doc.Send();
        Response.Flush();
        Response.End();
    }





 

转载地址:http://www.cnblogs.com/woody-wu/archive/2009/07/30/1535465.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值