当前位置:  编程技术>.net/c#/asp.net

C#实现导出和导入excel的代码

    来源: 互联网  发布时间:2014-08-30

    本文导语:  C#实现导出与导入excel。 代码1:   代码示例: #region  导出Excel  ///   /// 导出Excel  ///   /// 请求的页面this  /// 导出的数据源  /// 保存文件名称  /// 布尔值  public bool ExportExcel(Page page, DataTable dataTable, string fileName)...

C#实现导出与导入excel。

代码1:
 

代码示例:
#region  导出Excel 
///  
/// 导出Excel 
///  
/// 请求的页面this 
/// 导出的数据源 
/// 保存文件名称 
/// 布尔值 
public bool ExportExcel(Page page, DataTable dataTable, string fileName) 

    try 
    { 
        HttpContext.Current.Response.Clear(); 
        HttpContext.Current.Response.Buffer = true; 
        HttpContext.Current.Response.ContentType = "application/vnd.ms-excel.numberformat:@"; 
        page.EnableViewState = false; 
        HttpContext.Current.Response.Charset = "UTF-8"; 
        HttpContext.Current.Response.ContentEncoding = System.Text.Encoding.GetEncoding("gb2312");//设置输出流为简体中文 
        HttpContext.Current.Response.AppendHeader("Content-Disposition", "attachment;filename=" + fileName + ".xls"); 
        //输出列名 
        for (int i = 0; i < dataTable.Columns.Count; i++) 
          HttpContext.Current.Response.Write(dataTable.Columns[i].ColumnName + "t"); 
          HttpContext.Current.Response.Write("rn"); 
          //输出数据 
        for (int i = 0; i < dataTable.Rows.Count; i++) 
        { 
for (int j = 0; j < dataTable.Columns.Count; j++) 

    HttpContext.Current.Response.Write(dataTable.Rows[i][j].ToString() + "t"); 

HttpContext.Current.Response.Write("rn"); 
        } 
        //输出当前缓存内容 
        //HttpContext.Current.Response.Flush(); 
        HttpContext.Current.Response.End(); 
        return true; 
    } 
    catch 
    { 
        return false; 
    } 

#endregion 

代码2,
 

代码示例:
#region 导出Excel 自定义格式 
///  
/// 导出Excel   
/// 1.文本:vnd.ms-excel.numberformat:@ 
/// 2.日期:vnd.ms-excel.numberformat:yyyy/mm/dd 
/// 3.数字:vnd.ms-excel.numberformat:#,##0.00 
/// 4.货币:vnd.ms-excel.numberformat:¥#,##0.00 
/// 5.百分比:vnd.ms-excel.numberformat: #0.00% 
///  
///  
///  
///  
public bool Export(string fileName, DataTable dt) 

   try 
   { 
       HttpResponse resp; 
       resp = System.Web.HttpContext.Current.Response; 
       resp.ContentEncoding = System.Text.Encoding.GetEncoding("utf-8"); 
       resp.AppendHeader("Content-Disposition", "attachment;filename=" + fileName + ".xls"); 
       resp.AppendHeader("Content-Type", "application/ms-excel"); 
     
       StringBuilder colHeaders = new StringBuilder(); 
       StringBuilder ls_item = new StringBuilder(); 
       DataRow[] myRow = dt.Select(); 
       int cl = dt.Columns.Count; 
     
       colHeaders.Append(" n "); 
       colHeaders.Append(" n "); 
       colHeaders.Append(" n "); 
       colHeaders.Append(" n "); 
       colHeaders.Append(" "); 
       colHeaders.Append(" "); 
       //输出列名 
       for (int i = 0; i < dt.Columns.Count; i++) 
colHeaders.Append("" + dt.Columns[i].ColumnName + ""); 
       colHeaders.Append(" "); 
       resp.Write(colHeaders.ToString()); 
       foreach (DataRow row in myRow) 
       { 
ls_item.Append(""); 
for (int i = 0; i < cl; i++) 

   if (i == (cl - 1)) 
   { 
       ls_item.Append("" + row[i].ToString() + "" + "n"); 
   } 
   else 
   { 
       ls_item.Append("" + row[i].ToString() + ""); 
   } 

ls_item.Append(""); 
       } 
       ls_item.Append(" n "); 
       ls_item.Append(" n "); 
       ls_item.Append(" "); 
       resp.Write(ls_item.ToString()); 
       resp.End(); 
       return true; 
   } 
   catch 
   { 
       return false; 
   } 

#endregion 

代码3,
 

代码示例:
#region 导入Excel 
public string ImportExcel(string[] list, string filePath) 

        string isXls = System.IO.Path.GetExtension(filePath).ToLower();//System.IO.Path.GetExtension获得文件的扩展名 
        if (isXls != ".xls") 
        return "请选择Excel文件导入!"; 
        DataSet ds = ExecleDataSet(filePath);//调用自定义方法 
        DataRow[] dr = ds.Tables[0].Select();//定义一个DataRow数组 
        int rowsnum = ds.Tables[0].Rows.Count; 
        if (ds.Tables[0].Rows.Count == 0) 
        return "Excel无数据!"; 
        return ""; 
    } 
     
    //OleDB连接读取Excel中数据 
    public DataSet ExecleDataSet(string filePath) 
    { 
        string OleDbConnection = "Provider=Microsoft.Jet.OleDb.4.0;" + "data source=" + filePath + ";Extended Properties='Excel 8.0; HDR=YES; IMEX=1'"; 
        OleDbConnection conn = new OleDbConnection(OleDbConnection); 
        conn.Open(); 
        DataSet ds = new DataSet(); 
        OleDbDataAdapter odda = new OleDbDataAdapter("select * from [Sheet1$]", conn); 
        odda.Fill(ds); 
        conn.Close(); 
        return ds; 

#endregion 

    
 
 

您可能感兴趣的文章:

  • c#通过委托delegate与Dictionary实现action选择器代码举例
  • C#实现获取枚举中元素个数的方法
  • C#实现自定义双击事件
  • C#键盘输入回车键实现点击按钮效果的方法
  • C#实现获取一年中是第几个星期的方法
  • C#实现Datatable排序的方法
  • C#实现装箱与拆箱操作简单实例
  • 解决C#中WebBrowser的DocumentCompleted事件不执行的实现方法
  • C#下实现创建和删除目录的实例代码
  • 使用C#实现在屏幕上画图效果的代码实例
  • C#实现过滤html标签并保留a标签的方法
  • c#实现TextBox只允许输入数字
  • C# Winform 整个窗口拖动的实现代码
  • c# ListView实现双击Item事件的变通方法
  • C#实现随鼠标移动窗体实例
  • C#中的FileUpload 选择后的预览效果具体实现
  • C# 窗体隐藏及任务管理器中禁止关闭的实现代码
  • C#的锯齿数组以及C++实现代码
  • C#格式化文件大小的实现代码
  • C#怎样才能实现窗体最小化到托盘呢?
  • C# char类型字符转换大小写的实现代码
  • mysql mysqldump只导出表结构或只导出数据的实现方法
  • 如何用java实现将数据库中的image类型数据导出到文本文件。并导入(高分求救!!)
  • php导出excel单元格自动换行怎么实现?
  • PHP实现把MySQL数据库导出为.sql文件实例(仿PHPMyadmin导出功能)
  • mysql下完整导出导入实现方法
  • mysql数据库导出xml的实现方法
  • Godaddy 导入导出MSSQL数据库的实现步骤
  • mssql2005,2008导出数据字典实现方法
  • java导出csv方法实现讲解
  • Asp.net中DataTable导出到Excel的实现代码
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • H2 数据库导入CSV文件实现原理简析
  • MySQL中使用load data命令实现数据导入的方法
  • android实现raw文件夹导入数据库代码
  • 图解SSIS批量导入Excel文件的实现方法
  • php导入数据到mysql实现代码
  • 要实现message进程通信的send()和receive()在linux中应该添加什么头文件或导入怎样的库呢?
  • c#实现将Excel导入到dataGridView的代码
  • 使用navicat 8实现创建数据库和导入数据 管理用户与权限[图文方法]
  • html导入到excel或word中的实现代码
  • C#实现Excel导入sqlite的方法
  • c#将Excel数据导入到数据库的实现代码
  • java实现excel导入数据的工具类
  • php实现SQL Server数据导入Mysql数据库(示例)
  • python实现zencart产品数据导入到magento(python导入数据)
  • 通过javascript实现DIV居中,兼容各浏览器版本
  • socket实现多文件并发传输,求助多线程实现问题?
  • Python GUI编程:tkinter实现一个窗口并居中代码
  • interface 到底有什么用???实现接口,怎么实现??
  • 通过javascript库JQuery实现页面跳转功能代码
  • 怎么用Jsp实现在页面实现树型结构?
  • sharepoint 2010 使用STSNavigate函数实现文件下载举例
  • windows 下的PortTunnel 在linux下怎么实现?或者相应的已经实现的软件?端口映射
  • php实现socket实现客户端和服务端数据通信源代码
  • 网站重定向用C语言实现iptables,ACL实现
  • flash AS3反射实现(describeType和getDefinitionByName)
  • 在linux下如何编程实现nslookup命令实现的IP地址和域名互相转换的功能?
  • boost unordered_map和std::list相结合的实现LRU算法
  • 求在freebsd+Squid下实现pc上网的透明代理的实现方法!给出具体配置方法的高分谢!
  • 使用java jdk中的LinkedHashMap实现简单的LRU算法
  • php iis7站长之家
  • iphone cocos2d 精灵的动画效果(图片,纹理,帧)CCAnimation实现


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3