那个部分出现乱码:
HttpUtility.UrlEncode(string)
url传递中文的解决方案 
3种方法:
1.设置web.config文件。(我不喜欢设置成这样) 
<system.web> 
...... 
<globalization requestEncoding="gb2312" responseEncoding="gb2312" culture="zh-CN" fileEncoding="gb2312" /> 
...... 
</system.web> 
2.传递中文之前,将要传递的中文参数进行编码,在接收时再进行解码。 
>> 进行传递 
string Name = "中文参数"; 
Response.Redirect("B.aspx?Name="+Server.UrlEncode(Name)); 
>> 进行接收 
string Name = Request.QueryString["Name"]; 
Response.Write(Server.UrlDecode(Name)); 3.如果是从 .HTML 文件向 .Aspx 文件进行传递中文参数的话(即不从后台用 Redirect()方法进行 Url 转换)。一样要将传递的中文参数进行编码,在接收时再进行解码。 
>> 进行传递 
<script language="JavaScript"> 
function GoUrl() 

var Name = "中文参数"; 
location.href = "B.aspx?Name="+escape(Name); 

</script> 
<body onclick="GoUrl()"> 
>> 进行接收 
string Name = Request.QueryString["Name"]; 
Response.Write(Server.UrlDecode(Name)); 一般来说。设置web.config文件就可以了。但是如果你用 JavaScript 调用 webservice 方法的话(往webservice里面传递中文参数)。设置 web.config 文件好象无效。

解决方案 »

  1.   

    一楼很详细了,其实就是改一下web.config里的utf-8为gb2312
      

  2.   

    同意。
    二楼总结的很好。
    估计你该config就可以解决了。
      

  3.   

    我的web.config里的本身就是gb2312,不需要更改,但是问题依然存在!
    帮帮忙啊,没有人这样用过么?
      

  4.   

    问题可能出在你的前台页面,设置要输出页面的Charset=""或者GB2312
      

  5.   

    Charset=""或者GB2312,还是不行啊,
    难道没有人碰到过这样的问题么?
    难道没有人碰到过这样的问题么?
    难道没有人碰到过这样的问题么?
      

  6.   

    DataGrid导出Excel解决方案里面有例子可以下载测试,不过我测试过很多次没有出现过你的问题
    http://www.lionsky.net/MyWebsite/article/list.aspx?id=428
      

  7.   

    我就此有一个新问题!借此问一下!!!!
    我在DATAGRID中有一个LINKBUTTON,用上述方法导入EXCEL中,执行时报错:类型“DataGridLinkButton”的控件“DataGrid1__ctl3__ctl0”必须放在具有 runat=server 的窗体标记内。如果没有LINKBUTTON则可以,但是我需要这个LINKBUTTON,怎么解决啊!!!!如有人回答,我另开贴给分啊!!!!!!!!!!!!!!
      

  8.   

    you can  try   
                Response.Charset=""
    i have the same method with you ,but i don't have problem
      

  9.   

    我就此有一个新问题!借此问一下!!!!
    我在DATAGRID中有一个LINKBUTTON,用上述方法导入EXCEL中,执行时报错:类型“DataGridLinkButton”的控件“DataGrid1__ctl3__ctl0”必须放在具有 runat=server 的窗体标记内。如果没有LINKBUTTON则可以,但是我需要这个LINKBUTTON,怎么解决啊!!!!如有人回答,我另开贴给分啊!!!!!!!!!!!!!!
      

  10.   

    楼上的。你只能在做一个datagrid的副本,每次把副本穿给函数
      

  11.   

    这个toexecel我用过。有时也出现乱码,我的就是在两列的时候就出现,多啦就不出现,也在奇怪中!!
      

  12.   

    try this:<globalization requestEncoding="gb2312" responseEncoding="gb2312" fileEncoding="gb2312" culture="zh-CN" />
      

  13.   

    我的就更奇怪了,同一个datagrid,查询出全部结果,导出为EXCEL正常显示中文,查询出部分结果时,有些正常显示中文,有的却时乱码.....郁闷
    改web.config也没有用
      

  14.   

    我出现过同样问题,应该是微软的问题,这种导出方式不行,我的数据中有简有繁,最后没招,重新用OWC写的。
    Dim objExcel As New OWC.Spreadsheet()               
    Dim myRow As DataRow
    Dim myColumn As New DataColumn()
    Dim RowCount As Object
    Dim ColumnCount As Object        'Add the column headers to the excel sheet'
            For Each myColumn In myTable.Columns
                ColumnCount += 1
                objExcel.ActiveSheet.Cells(1, ColumnCount) = myColumn.ColumnName
            Next        ColumnCount = 0
            RowCount = 0
            Dim strCell As String
            Dim strCellValue As String        'Add the data to the excel sheet'
            For Each myColumn In myTable.Columns
                ColumnCount += 1
                RowCount = 1
                For Each myRow In myTable.Rows
                    RowCount += 1
                    Try
                        strCell = objExcel.ActiveSheet.Cells(RowCount, ColumnCount).Address()
                        Select Case myRow(myColumn).GetType().FullName
                            Case "System.DBNull"
                                strCellValue = ""
                            Case "System.String"
                                strCellValue = CStr(myRow(myColumn)).Replace(Chr(13) + Chr(10), ".").ToString()
                            Case "System.DateTime"
                                strCellValue = Format(CStr(myRow(myColumn)).ToString(), "yyyy/MM/dd")
                            Case Else
                                strCellValue = CStr(myRow(myColumn))
                        End Select
                        With objExcel.Range(strCell)
                            .Value = strCellValue
                            .Font.Size = 9
                            .Font.Bold = False
                        End With
                    Catch
                        Alert("failed", Me)
                    End Try
                Next
            NextobjExcel.ActiveSheet.Export(FileAndPath, OWC.SheetExportActionEnum.ssExportActionNone)
      

  15.   

    HRESULT 中的异常:0xE004002A。 
    说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。 异常详细信息: System.Runtime.InteropServices.COMException: HRESULT 中的异常:0xE004002A。
      

  16.   

    楼上的兄弟,是否执行下句出错?
    objExcel.ActiveSheet.Export(FileAndPath, OWC.SheetExportActionEnum.ssExportActionNone)
    原因在于FileAndPath有错,我把那个什么server.map去掉就可以了。
    比如:F:\text.cls就可以了,
      

  17.   

    用搂主的方法导出为空白!
    什么原因,dg中绝对有数据,我都dg.items.count检查过了!