datagrid|excel| Data | Download Imports System
Imports System.Text
Namespace Toexcel
' Function: The datagrid in the ASP.net to generate Excel file downloads.
' Mountains improvement: 1, Support Chinese 2, hidden column does not show
' Date: 2002.10.30
Public Class Datagridtocsv
Public Function Generatefile (ByRef Page as System.Web.UI.Page, ByVal Mydatagrid as System.Web.UI.WebControls.DataGrid, ByVal FileName As String) as String
Dim resp as HttpResponse
Dim ColCount as Integer = mydatagrid.columns.count-1
RESP = Page.Response
Resp. ContentEncoding = System.Text.Encoding.GetEncoding ("GB2312") ' The key to solve Chinese garbled characters
' Resp. Charset = "Utf-8"
' Resp. AddFileDependency (FileName)
' Resp. ContentType = "Text/html"
"Resp." Appendheader ("Content-type", "text/html; charset=gb2312 ")
Resp. Appendheader ("Content-disposition", "attachment;filename=" + filename) ' necessary, made download file
Dim colheaders as String = ""
Dim Stritems as StringBuilder = New StringBuilder ()
Dim MyCol as DataGridColumn
Dim I as Integer
For i = 0 to ColCount
MyCol = Mydatagrid.columns (i)
If mycol.visible = True Then
Colheaders = colheaders & myCol.HeaderText.ToString & ","
End If
Next
If colheaders.length > 0 Then
colheaders = colheaders.substring (0, Colheaders.lastindexof (","))
End If
Colheaders = colheaders & Chr (a) & Chr (10)
Resp. Write (colheaders)
Dim Colrow as String
Dim Item as DataGridItem
For each item in Mydatagrid.items
Resp. Write (Formatexportrow (ColCount, item, Mydatagrid))
Next Item
Resp. End ()
End Function
Private Function Formatexportrow (ByVal colcount as Integer, ByVal Item as DataGridItem, ByVal Mydatagrid as System.Web.UI. Webcontrols.datagrid) as String
Dim Stritem as String
Dim I as Integer
For i = 0 to ColCount
If mydatagrid.columns (i). Visible = True Then
If item.cells (i). Text is System.DBNull.Value Then
Item.cells (i). Text = ""
End If
If i = ColCount Then
Stritem + = Item.cells (i). Text.tostring & Chr (+) & Chr (10)
Else
Stritem + = Item.cells (i). Text.tostring & ","
End If
End If
Next
stritem = Replace (Stritem, "", "")
Return stritem
End Function
The content source of this page is from Internet, which doesn't represent Alibaba Cloud's opinion;
products and services mentioned on that page don't have any relationship with Alibaba Cloud. If the
content of the page makes you feel confusing, please write us an email, we will handle the problem
within 5 days after receiving your email.
If you find any instances of plagiarism from the community, please send an email to:
info-contact@alibabacloud.com
and provide relevant evidence. A staff member will contact you within 5 working days.