本公司原来用ms office,使用如下导出代码导出的xls在使用上没有问题,但目前公司禁用ms office,改用wps,致使导出的xls文件无法使用wps软件正常打开,打开后全部显示如下内容+ADw-div+AD4-
+ADw-table cellspacing+ADOAIg-0 ..................
................
................
................
................
................
.................
+ADw-/div+AD4-
经过本人测试推敲,导出的xls不是标准的excel文件,因为使用ultraEdit等软件打开后,不会显示乱码,(标准的excel文件使用记事本打开都会是乱码的)。所以请问各位高手,怎样导出标准的excel文件以供wps使用,谢谢!‘附上本人目前使用的vb.net 2008 导出代码
Protected Sub Button1_Click()Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs)
Response.Clear
Response.Buffer = True
Response.Charset = "GB2312"
Response.AppendHeader("Content-Disposition", "attachment;filename=FileName.xls")
Response.ContentEncoding = System.Text.Encoding.UTF7
Response.ContentType = "application/ms-excel"
Dim oStringWriter As System.IO.StringWriter = New System.IO.StringWriter
Dim oHtmlTextWriter As System.Web.UI.HtmlTextWriter = New System.Web.UI.HtmlTextWriter(oStringWriter)
Me.GridView1.RenderControl(oHtmlTextWriter)
Response.Output.Write(oStringWriter.ToString)
Response.Flush
Response.End
End Sub Public Overloads Overrides Sub VerifyRenderingInServerForm()Sub VerifyRenderingInServerForm(ByVal control As Control)
End Sub
excelasp.netvb.net
+ADw-table cellspacing+ADOAIg-0 ..................
................
................
................
................
................
.................
+ADw-/div+AD4-
经过本人测试推敲,导出的xls不是标准的excel文件,因为使用ultraEdit等软件打开后,不会显示乱码,(标准的excel文件使用记事本打开都会是乱码的)。所以请问各位高手,怎样导出标准的excel文件以供wps使用,谢谢!‘附上本人目前使用的vb.net 2008 导出代码
Protected Sub Button1_Click()Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs)
Response.Clear
Response.Buffer = True
Response.Charset = "GB2312"
Response.AppendHeader("Content-Disposition", "attachment;filename=FileName.xls")
Response.ContentEncoding = System.Text.Encoding.UTF7
Response.ContentType = "application/ms-excel"
Dim oStringWriter As System.IO.StringWriter = New System.IO.StringWriter
Dim oHtmlTextWriter As System.Web.UI.HtmlTextWriter = New System.Web.UI.HtmlTextWriter(oStringWriter)
Me.GridView1.RenderControl(oHtmlTextWriter)
Response.Output.Write(oStringWriter.ToString)
Response.Flush
Response.End
End Sub Public Overloads Overrides Sub VerifyRenderingInServerForm()Sub VerifyRenderingInServerForm(ByVal control As Control)
End Sub
excelasp.netvb.net
可以考虑:
1. 使用Microsoft.Office.Interop.Excel, 不过公司既然禁用MS Office,这个方法在生成Excel的时候可能行不通。
2. 尝试使用第三方的Excel生成框架,生成xlsx格式的, 比如说EPPlus
http://epplus.codeplex.com/
http://blog.csdn.net/chinajiyong/article/details/7187345
(3)操作Excel的COM组件(需要服务器端安装Excel)