c# ASP.Net 使用开源免费类库操作Excel

主要找到以下类库:

  1. MyXls(http://sourceforge.net/projects/myxls/)
  2. Koogra(http://sourceforge.net/projects/koogra/)  
  3. ExcelLibrary(http://code.google.com/p/excellibrary/)
  4. ExcelPackage(http://excelpackage.codeplex.com/)
  5. EPPlus(http://epplus.codeplex.com/)
  6. LinqToExcel(http://code.google.com/p/linqtoexcel/)
  7. NetOffice(http://netoffice.codeplex.com/) 需安装Office Excel

从1-6的类库均不需要安装Office,不使用Office COM组件;而NetOffice需要安装Office,它提供的是与Office COM组件差不多的功能。

ASP.NET MVC File Management

http://file.codeplex.com/

Excel2Object

Excel 与 Object 互相转换

使用的NPOI

https://github.com/tonyqus/npoi

  1. EPPlus(http://epplus.codeplex.com/)
protected void UploadButton_Click(Object sender, EventArgs e)
{
    if (FileUpload1.HasFile && Path.GetExtension(FileUpload1.FileName) == ".xlsx")
    {
        using (var excel = new ExcelPackage(FileUpload1.PostedFile.InputStream))
        {
            var tbl = new DataTable();
            var ws = excel.Workbook.Worksheets.First();
            var hasHeader = true;  // adjust accordingly
            // add DataColumns to DataTable
            foreach (var firstRowCell in ws.Cells[1, 1, 1, ws.Dimension.End.Column])
                tbl.Columns.Add(hasHeader ? firstRowCell.Text
                    : String.Format("Column {0}", firstRowCell.Start.Column));

            // add DataRows to DataTable
            int startRow = hasHeader ? 2 : 1;
            for (int rowNum = startRow; rowNum <= ws.Dimension.End.Row; rowNum++)
            {
                var wsRow = ws.Cells[rowNum, 1, rowNum, ws.Dimension.End.Column];
                DataRow row = tbl.NewRow();
                foreach (var cell in wsRow)
                    row[cell.Start.Column - 1] = cell.Text;
                tbl.Rows.Add(row);
            }
            var msg = String.Format("DataTable successfully created from excel-file. Colum-count:{0} Row-count:{1}",
                                    tbl.Columns.Count, tbl.Rows.Count);
            UploadStatusLabel.Text = msg;
        }
    }
    else
    {
        UploadStatusLabel.Text = "You did not specify a file to upload.";
    }
}

c# ASP.Net 使用开源免费类库操作Excel,布布扣,bubuko.com

时间: 2024-10-23 22:21:44

c# ASP.Net 使用开源免费类库操作Excel的相关文章

asp.net(C#)之NPOI&amp;quot;操作Excel

1.首先到网上下载"NPOI.DLL".引用. 2.新建一个操作类"ExcelHelper.cs": using System.Collections.Generic; using System.Data; using System.IO; using System.Linq; using NPOI.HSSF.UserModel; using NPOI.SS.UserModel; using NPOI.XSSF.UserModel; public class Exc

C# 之 用NPOI类库操作Excel

1.需引用以下命名空间: using NPOI.HSSF.UserModel; using NPOI.SS.UserModel; using NPOI.HPSF; using NPOI.HSSF.Util; 2.接下来在内存中生成一个Excel文件,代码如下: HSSFWorkbook book = new HSSFWorkbook(); ISheet sheet = book.CreateSheet("Sheet1"); 3.然后在新创建的sheet里面,创建我们的行和列,代码如下:

15款开源PHP类库

PHP库给开发者提供了一个标准接口,它帮助开发者在PHP里充分利用面向对象编程.这些库为特定类型的内置功能提供了一个标准的API,允许类可以与PHP引擎进行无缝的交互.此外,开发者使用这些类库还可以简化工作流程,提供工作效率. 下面就一起来看看这些非常实用且免费的类库吧,希望它们能助你一臂之力. 1.Requests Requests是一个用PHP编写的HTTP库,遵循ISC开源协议,托管在GitHub上.Requests取代了Python HTTP/1.1以外的一切工作———让你与Web服务可

非常实用的15款开源PHP类库

PHP库给开发者提供了一个标准接口,它帮助开发者在PHP里充分利用面向对象编程.这些库为特定类型的内置功能提供了一个标准的API,允许类可以与PHP引擎进行无缝的交互.此外,开发者使用这些类库还可以简化工作流程,提供工作效率. 下面就一起来看看这些非常实用且免费的类库吧,希望它们能助你一臂之力. 1.Requests Requests是一个用PHP编写的HTTP库,遵循ISC开源协议,托管在GitHub上.Requests取代了Python HTTP/1.1以外的一切工作———让你与Web服务可

开源 免费 java CMS - FreeCMS1.9 站内信

项目地址:http://www.freeteam.cn/ 站内信 管理站内信数据. 1. 站内信 从左侧管理菜单点击站内信进入. 2. 发送 系统管理员可以直接发送站内信给会员. 点击"发送"按钮. 选择需要发送的会员,输入标题内容后点击"发送"按钮. 3. 查看 在站内信列表中直接点击标题可以查看站内信的详细信息. 4. 删除 选择需要删除的站内信,然后点击"删除"按钮. 提示:同时可以删除多个站内信. 为了防止误操作,系统会提示用户是否删除,

[转]非常实用的15款开源PHP类库

源文件:http://www.csdn.net/article/2013-10-09/2817123-PHP-Libraries 英文原文:https://codegeekz.com/useful-php-libraries-and-classes-for-developers/ 1.Requests Requests是一个用PHP编写的HTTP库,遵循ISC开源协议,托管在GitHub上.Requests取代了Python HTTP/1.1以外的一切工作———让你与Web服务可以无缝的结合.

开源 免费 java CMS - FreeCMS1.9 简历管理

项目地址:http://code.google.com/p/freecms/ 简历管理 管理当前管理站点的简历数据. 1. 回复简历 选择需要回复的简历,然后点击"回复". 注意:同时只能回复一个简历. 输入回复内容后,点击"回复"按钮即可. 2. 删除简历 选择需要删除的简历,然后点击"删除"按钮. 提示:同时可以删除多个简历. 为了防止误操作,系统会提示用户是否删除,点击"确定"完成删除操作. 开源 免费 java CMS

开源 免费 java CMS - FreeCMS1.9 会员管理

项目地址:http://www.freeteam.cn/ 会员管理 1. 会员管理 从左侧管理菜单点击会员管理进入. 2. 添加会员 在会员列表下方点击"添加"按钮. 填写相关属性后点击"保存"按钮即可. 3. 编辑会员 选择需要编辑的会员,然后点击"编辑"按钮. 注意:同时只能编辑一个会员. 填写相关属性后点击"保存"按钮即可. 提示:如果需要修改密码,请勾选"我要修改密码",然后输入新的密码即可. 4.

【转】一款开源免费跨浏览器的视频播放器--videojs使用介绍

特别提示:本人博客部分有参考网络其他博客,但均是本人亲手编写过并验证通过.如发现博客有错误,请及时提出以免误导其他人,谢谢!欢迎转载,但记得标明文章出处:http://www.cnblogs.com/mao2080/ 最近项目中的视频功能,需要做到浏览器全兼容,所以之前用html5实现的视频功能就需要进行改造了.在网上翻了个遍,试来试去,在所有的视频播放器中,就数它最实际了.首先我们来看看它的优点: 1.它是开源免费的,你可以在github很容易的获取它的最新代码. 2.使用它非常的容易,只要花