在我的功能中,我有以下说明:
grid.DataSource = dt
grid.DataBind()
Response.Clear()
Response.AddHeader("content-disposition", "attachment; filename=Soste.xls")
Response.AddHeader("Content-Type", "application/Excel")
Response.ContentType = "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet"
Response.Charset = ""
Dim stringWrite As System.IO.StringWriter = New System.IO.StringWriter
Dim htmlWrite As New HtmlTextWriter(stringWrite)
grid.RenderControl(htmlWrite)
Dim html As String = stringWrite.ToString()
Dim pattern As String = "(\p{Sc})?"
Dim rgx As New System.Text.RegularExpressions.Regex(pattern)
html = rgx.Replace(html, "")
Response.Write(html)
HttpContext.Current.Response.[End]()
网格是数据网格,我将数据发布到导出。
在PC上可以,但是当我尝试将数据导出到平板电脑(Android或苹果)时,文件无法打开。
我问:你甚至可以在手机上打开它吗?
非常感谢回应。
答案 0 :(得分:0)
您的问题的一个可能的解释是您的代码实际上并不创建真正的.xls文件。相反,它会创建一个包含HTML表格的文本文件,并为该文件提供.xls扩展名:
Excel能够打开像这样的“假”.xls文件(另一个例子是已经重命名为.xls的.csv文件),但其他平台上的文件查看器/编辑器可能不太适应。
如果您确实想要生成.xls文件,那么您应该使用创建实际.xls文件的库。这里有另一个问题的建议: