CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
不看会后悔的Windows XP之经验谈 简单快捷DIY实用家庭影院
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

datagrid数据导入到excel的问题

楼主wangwenhong1000(乖乖兔)2006-02-10 14:46:04 在 .NET技术 / ASP.NET 提问

代码如下:  
  public   void   ToExcel(System.Web.UI.Control   ctl,string   FileName)  
  {  
                          System.Text.StringBuilder     colHeaders=new   System.Text.StringBuilder   ()   ,Header_Name   =new   System.Text.StringBuilder   ();    
  HttpContext.Current.Response.Charset   ="GB2312";  
  HttpContext.Current.Response.ContentEncoding   =System.Text.Encoding.UTF7;  
  HttpContext.Current.Response.ContentType   ="application/ms-excel";/****image/JPEG;text/HTML;image/GIF;vnd.ms-excel/msword****/  
  HttpContext.Current.Response.AppendHeader("Content-Disposition","attachment;filename="+FileName+".xls");  
  ctl.Page.EnableViewState   =false;  
  System.IO.StringWriter     tw   =   new   System.IO.StringWriter()   ;  
  System.Web.UI.HtmlTextWriter   hw   =   new   System.Web.UI.HtmlTextWriter   (tw);  
  ctl.RenderControl(hw);  
  //写标题    
  colHeaders.Append("");  
  colHeaders.Append("\t");  
  colHeaders.Append("\t");  
  colHeaders.Append("友阿集团水、电房租等费扣款表");  
  colHeaders.Append("\n");  
  HttpContext.Current.Response.Write(colHeaders);  
  //写表头  
  Header_Name.Append("\n");  
  Header_Name.Append("\t");  
  Header_Name.Append("数据月份:2006-01-10");  
  Header_Name.Append("\t");  
  Header_Name.Append("\t");  
  Header_Name.Append("所属部门:公司总部");  
  Header_Name.Append("\n");  
  //写数据  
  HttpContext.Current.Response.Write(Header_Name);  
  HttpContext.Current.Response.Write(tw.ToString());  
  HttpContext.Current.Response.End();  
  }  
   
   
  我的问题是,表头不能换行,标题也不能换行,请问是什么原因?  
  为什么/t和/n没有生效? 问题点数:50、回复次数:17Top

1 楼wangwenhong1000(乖乖兔)回复于 2006-02-10 14:56:33 得分 0

怎么没人回答呀?分数不够吗?Top

2 楼jerrie_1()回复于 2006-02-10 15:06:21 得分 5

试试把"\n"改成"<br>"Top

3 楼wangwenhong1000(乖乖兔)回复于 2006-02-10 15:12:08 得分 0

不行呀,大哥,改成"<br>"后,全部都是乱码了Top

4 楼yuhonglai(哈哈)回复于 2006-02-10 15:31:09 得分 5

VB.NET:   VbCrLfTop

5 楼wangwenhong1000(乖乖兔)回复于 2006-02-10 15:41:42 得分 0

yuhonglai(哈哈)   ,大哥,什么意思呀?小弟不明白Top

6 楼jerrie_1()回复于 2006-02-10 15:42:10 得分 15

自己看看!  
      ……    
        da.Fill(ds,"table1");    
        DataTable   dt=ds.Tables["table1"];    
        StringWriter   sw=new   StringWriter();    
        sw.WriteLine("自动编号,姓名,年龄");    
        foreach(DataRow   dr   in   dt.Rows)    
        {    
          sw.WriteLine(dr["ID"]+","+dr["vName"]+","+dr["iAge"]);    
        }    
        sw.Close();    
        Response.AddHeader("Content-Disposition",   "attachment;   filename=test.csv");    
        Response.ContentType   =   "application/ms-excel";    
        Response.ContentEncoding=System.Text.Encoding.GetEncoding("GB2312");    
        Response.Write(sw);    
        Response.End();    
   
  对方法一,二补充一点,如果你希望导出的是xls文件分隔符用\t就可以了,不要用逗号    
   
  代码修改如下:    
  sw.WriteLine("自动编号\t姓名\t年龄");    
        foreach(DataRow   dr   in   dt.Rows)    
        {    
          sw.WriteLine(dr["ID"]+"\t"+dr["vName"]+"\t"+dr["iAge"]);    
        }    
  Top

7 楼wangwenhong1000(乖乖兔)回复于 2006-02-10 21:25:16 得分 0

还是不行呀,不知道为什么?就是不换行,各位大哥们,帮我想想办法呀Top

8 楼wangwenhong1000(乖乖兔)回复于 2006-02-10 21:50:00 得分 0

cw.WriteLine("\t友阿集团水、电房租等费扣款表");  
  cw.WriteLine("\t所属部门:公司总部");  
  cw.Close();  
  HttpContext.Current.Response.Write(cw);  
  在excel里面,数据在一行,一个单元格里面,各位大哥帮我想想办法呀Top

9 楼chnking(kent)回复于 2006-02-10 22:19:39 得分 5

将内容组合成html的table的标签输出,html的table的<td>单元会输出成excel的单元格,你试试Top

10 楼wangwenhong1000(乖乖兔)回复于 2006-02-11 08:34:22 得分 0

chnking(kent)   ,我对html一点都不懂,能说的详细一点吗?Top

11 楼wangwenhong1000(乖乖兔)回复于 2006-02-11 11:20:20 得分 0

没有人有个完整的解决方法吗?Top

12 楼wangwenhong1000(乖乖兔)回复于 2006-02-11 21:22:07 得分 0

哎,还等一天,如果没人回复,结贴算了。Top

13 楼purplesunshine(紫色阳光)回复于 2006-02-11 22:34:59 得分 5

帮你顶下~~Top

14 楼chnking(kent)回复于 2006-02-13 21:34:00 得分 5

换行,加一个回车符:  
  colHeaders.Append((char)13);Top

15 楼chnking(kent)回复于 2006-02-13 21:34:47 得分 5

单元之间的分割用逗号Top

16 楼szh3210(/+/=〆)回复于 2006-02-13 22:52:47 得分 5

http://singlepine.cnblogs.com/articles/305843.htmlTop

17 楼wangwenhong1000(乖乖兔)回复于 2006-02-15 13:44:30 得分 0

还是搞不定,结了算了Top

相关问题

  • datagrid数据导入excel
  • VB将datagrid数据导入excel
  • datagrid的数据怎么导入excel?
  • 如何将DATAGRID的数据导入到Excel中
  • 在ASP.NET中如何将DataGrid中的数据导入到Excel
  • 如何在winform下把DataGrid中数据导入到excel中
  • 在WebForm下怎样将DataGrid中的数据导入到Excel中?
  • 把DataGrid数据导入Excel后,如何消除Excel.exe线程
  • 如何将WindowsForm中dataGrid中的数据导入Excel文件???
  • 怎样实现excel的数据导入到datagrid中?

关键词

  • excel
  • html
  • colheaders
  • httpcontext
  • sw
  • dr
  • stringwriter
  • 大哥
  • cw
  • writeline

得分解答快速导航

  • 帖主:wangwenhong1000
  • jerrie_1
  • yuhonglai
  • jerrie_1
  • chnking
  • purplesunshine
  • chnking
  • chnking
  • szh3210

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo