首先要引用 NPOI.dll   (可在网上下载!)
//导入
public void OnSubmit()
        {
            string path = Server.MapPath("/upload/201410/27/201410271103461051.xls");
            FileStream fs = File.Open(path, FileMode.Open);
            System.Data.DataTable dt = ConvertToDataTable(fs);
            
            foreach (DataRow row in dt.Rows)
            {
                if (row["Mobile1"] != null)
                {
                    Response.Write(row["Mobile1"].ToString() + " " + row["Mobile2"].ToString() + "
");
                }
            }
            Response.End();
        }

//excel转DataTable
public static DataTable ConvertToDataTable(System.IO.Stream excelFileStream)
        {
            HSSFWorkbook HSSFWorkbook = new HSSFWorkbook(excelFileStream);
            DataTable dt = new DataTable();
            HSSFSheet sheet = (HSSFSheet)HSSFWorkbook.GetSheetAt(0);
            System.Collections.IEnumerator rows = sheet.GetRowEnumerator();
            int n = 0;
            while (rows.MoveNext())
            {
                HSSFRow row = (HSSFRow)rows.Current;
                if (n == 0)
                {
                    for (int i = 0; i < row.LastCellNum; i++)
                    {
                        HSSFCell cell = (HSSFCell)row.GetCell(i);
                        if (cell == null)
                            continue;
                        DataColumn column = new DataColumn(cell.StringCellValue);

dt.Columns.Add(column);
                    }
                }
                else
                {
                    DataRow dtRow = dt.NewRow();
                    string rValue = "";
                    for (int i = 0, j = 0; i < row.LastCellNum; i++)
                    {
                        HSSFCell cell = (HSSFCell)row.GetCell(i);
                        if (cell == null)
                        {
                            dtRow[i] = "";
                        }
                        else
                        {
                            dtRow[j] = cell.ToString();
                            rValue = cell.ToString();
                            j++;
                        }
                    }
                    if (string.IsNullOrEmpty(rValue.Trim()))
                        break;
                    dt.Rows.Add(dtRow);
                }
                n++;
            }
            return dt;

}
 
//导出
///

/// 将明细表导出到Excel

///

///
要导入到Excel中的中文表头的Sql,将需要的字段通过sql as成中文名
///

/// 1 成功 -1失败
protected int ExportToExcel(string sql, HttpResponse response)
{
DataTable dt = CommOtherBLL.ExportToExcel(sql); //要导出的表
if (dt != null && dt.Rows.Count > 0)
{
StringBuilder strContent = new StringBuilder();
for (int i = 0; i < dt.Columns.Count; i++)
strContent.Append(dt.Columns[i] + "\t");
strContent.Append("\n");
for (int i = 0; i < dt.Rows.Count; i++)
{
for (int y = 0; y < dt.Columns.Count; y++)
strContent.Append(dt.Rows[i][y] + "\t");
strContent.Append("\n");
}
response.AddHeader("Content-Disposition", "attachment; filename=" + System.Web.HttpUtility.UrlEncode("excel", System.Text.Encoding.UTF8) + ".xls");
response.ContentType = "application/ms-excel";
response.ContentEncoding = System.Text.Encoding.GetEncoding("GB2312");
response.Write(strContent.ToString());
response.End();
return 1;
}
else
return -1;
}

EXCLE 导入 或 导出的更多相关文章

  1. Springboot Excle导入导出

    Springboot Excle导入导出 导入操作:Excle批量导入 导出操作:下载模版 开发笔记 pom.xml <!-- Excle相关jar --> <dependency& ...

  2. java中使用POI+excel 实现数据的批量导入和导出

    java web中使用POI实现excel文件的导入和导出 文件导出 //导入excle表 public String exportXls() throws IOException{ //1.查询所有 ...

  3. C# Excel导入、导出【源码下载】

    本篇主要介绍C#的Excel导入.导出. 目录 1. 介绍:描述第三方类库NPOI以及Excel结构 2. Excel导入:介绍C#如何调用NPOI进行Excel导入,包含:流程图.NOPI以及C#代 ...

  4. ASP.NET MVC5+EF6+EasyUI 后台管理系统(63)-Excel导入和导出-自定义表模导入

    系列目录 前言 上一节使用了LinqToExcel和CloseXML对Excel表进行导入和导出的简单操作,大家可以跳转到上一节查看: ASP.NET MVC5+EF6+EasyUI 后台管理系统(6 ...

  5. Hawk 5.1 数据导入和导出

    除了一般的数据库导入导出,Hawk还支持从文件导入和导出,支持的文件类型包括: Excel CSV(逗号分割文本文件) TXT (制表符分割文本文件) Json xml Excel 目前来看,Exce ...

  6. ASP.NET MVC5+EF6+EasyUI 后台管理系统(63)-Excel导入和导出

    系列目录 昨天文章太过仓促没有补充导出的示例源码,在者当时弄到到很晚没时间做出导出功能,对阅读理解造成影响,现补充一份示例源码,顺便补充导出的功能说明,望理解 示例代码下载   https://yun ...

  7. 萌新笔记——C++里创建 Trie字典树(中文词典)(二)(插入、查找、导入、导出)

    萌新做词典第二篇,做得不好,还请指正,谢谢大佬! 做好了插入与遍历功能之后,我发现最基本的查找功能没有实现,同时还希望能够把内存的数据存入文件保存下来,并可以从文件中导入词典.此外,数据的路径是存在配 ...

  8. [转]Java中导入、导出Excel

    原文地址:http://blog.csdn.net/jerehedu/article/details/45195359 一.介绍 当前B/S模式已成为应用开发的主流,而在企业办公系统中,常常有客户这样 ...

  9. Oracle 文件的导入与导出

    说明:本机使用的是32位oracle,使用的方法是plsql导入与导出 1.导出数据步骤. 1)登陆上plsql后在工具里选择导出用户对象,选择上所有的表在选择保存的路径.点击导出就可以了. 2)上边 ...

随机推荐

  1. ViewPager刷新原理

    ViewPager的数据是通过PageAdapter来装载的,刷新数据的方法有以下: 调用adapter.notifyDataSetChanged(); 刷新控件,但是要覆盖PagerAdapter的 ...

  2. vue较深入的知识点

    1 理解何为虚拟节点 虚拟dom是什么? 虚拟dom就是通过js对象来模拟描述dom树,包括tag,attr, children等属性来代表标签名,属性,子元素等.由于不需要有操作dom的方法,所以比 ...

  3. 论文翻译:Ternary Weight Networks

    目录 Abstract 1 Introduction 1.1 Binary weight networks and model compression 2 Ternary weight network ...

  4. 【转】一文掌握 Linux 性能分析之网络篇(续)

    [转]一文掌握 Linux 性能分析之网络篇(续) 在上篇网络篇中,我们已经介绍了几个 Linux 网络方向的性能分析工具,本文再补充几个.总结下来,余下的工具包括但不限于以下几个: sar:统计信息 ...

  5. CentOs7.5安装Redis

    前言 虽说现在都是买服务了,可是自己做的小DEMO偶尔也用用Redis,不会装也不行 变更记录 # 19.4.24  起笔 正文 官网 https://redis.io/ 首先去官网找到最新的链接 截 ...

  6. W3CSchool闯关笔记(JQuery)

    <script> $(document).ready(function(){ }); </script> <!-- Only change code above this ...

  7. Kali Linux ——在无网络情况下安装无线网卡驱动

    1.背景: 今日刚刚开始学习kali linux,众所周知,安装完成后,系统是没有无线网卡驱动的,这就对学生党造成相当的困扰:校园网要连接有线是需要认证客户端的,而认证客户端只有windows端,如此 ...

  8. 如何在Django中配置MySQL数据库

    直接上图 在项目中直接找到settings 文件 第一步       原始Django自带数据库 第二步将配置改成MySQL的数据 第三步  在__init__文件中告知Django使用MySQL数据 ...

  9. C# 定时任务

    工作中需要做个每天定时发邮件的功能,了解之后知道java里有做定时任务比较容易的方法,就是Quartz,在C#里叫Quartz.Net. 在写代码之前需要引用几个dll文件,分别是C5.dll.Com ...

  10. Jmeter 后置处理器JSON Extractor 提取json的多个值