读书人

ASP.net导出excel控制EXCEL格式有关

发布时间: 2011-12-21 23:56:01 作者: rapoo

ASP.net导出excel,控制EXCEL格式问题
用ASP.net通过RESPONSE.Write导出EXCEL,但字符型数据如04导到excel中就变为4了,请问如何将导出的数据在excel中控制为文本型,谢谢,急!!!请帮助一下。

代码如下:
'定义文档类型、字符编码
'********************************************************************
Response.Clear() 'Clear方法删除所有缓存中的HTML输出
Response.Buffer = True '服务器将不会向客户端发送任何信息
Response.Charset = "utf-8 "

'下面这行很重要, attachment 参数表示作为附件下载,您可以改成 online在线打开
'filename=FileFlow.xls 指定输出文件的名称,注意其扩展名和指定文件类型相符,可以为:.doc/.xls /.txt/.htm  
Response.AppendHeader( "Content-Disposition ", "attachment;filename=FileFlow.xls ")

Response.ContentEncoding = System.Text.Encoding.GetEncoding( "utf-8 ")
'Response.ContentEncoding = System.Text.Encoding.GetEncoding( "GB2312 ") '设置输出流为简体中文
'Response.ContentType指定文件类型 可以为application/ms-excel application/ms-word application/ms-txt application/ms-html 或其他浏览器可直接支持文档 
Response.ContentType = "application/ms-excel " '设置输出文件类型为excel文件。
Me.EnableViewState = False
'********************************************************************

'定义一个输入流()
'********************************************************************
Dim myCItrad As System.Globalization.CultureInfo = New System.Globalization.CultureInfo( "ZH-CN ", True)
Dim oStringWriter As System.IO.StringWriter = New System.IO.StringWriter(myCItrad)

Dim oHtmlTextWriter As System.Web.UI.HtmlTextWriter = New System.Web.UI.HtmlTextWriter(oStringWriter)
'********************************************************************

'将目标数据绑定到输入流输出
'********************************************************************
Me.DataGrid1.RenderControl(oHtmlTextWriter)
'me 表示输出本页,你也可以绑定datagrid,或其他支持obj.RenderControl()属性的控件  

Response.Write(oStringWriter.ToString())

'********************************************************************



[解决办法]
private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
if(e.Item.ItemType == ListItemType.Item || e.Item.ItemType == ListItemType.AlternatingItem)
{
e.Item.Cells[0].Attributes.Add( "style ", "vnd.ms-excel.numberformat:@ ");
e.Item.Cells[3].Attributes.Add( "style ", "vnd.ms-excel.numberformat:¥#,###.00 ");
}
}
http://dotnet.aspx.cc/article/8a4cbf47-b888-4832-3389-ed3a3a3c8aab/read.aspx

http://dotnet.aspx.cc/Exam/OutPutExcel.aspx

读书人网 >asp.net

热点推荐