我正在使用一个 (VB.NET) 站点,该站点在由另一位程序员创建和维护 5 年以上后交给我。该站点使用 Linq to XML 将文件生成为 Excel (2003) .xls 文件。
#Region "Download Excel"
<Authorize()>
Sub DownloadListForFile()
Dim folder As String = ConfigurationManager.AppSettings("UserFiles") & "\" & UserId.ToString
Dim file As String = "file.xls"
Dim path As String = folder & "\" & file
If Not (New IO.DirectoryInfo(folder)).Exists Then
MkDir(folder)
End If
Dim xml = (New ReportsXML.GetXML).GetListForFile()
xml.Save(path)
Response.ContentType = "application/vnd.ms-excel"
Response.Charset = ""
Response.TransmitFile(path)
Response.AddHeader("content-disposition", "filename=" & file)
Response.End()
End Sub
...
Function GetListForFile() As System.Xml.Linq.XDocument
...
Dim sml = <?xml version="1.0"?>
<?mso-application progid="Excel.Sheet"?>
<Workbook xmlns="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:x="urn:schemas-microsoft-com:office:excel"
xmlns:ss="urn:schemas-microsoft-com:office:spreadsheet"
xmlns:html="http://www.w3.org/TR/REC-html40">
...ETC。
我们想让这个网站 100% 兼容 iPad,到目前为止,这是唯一阻碍我们的因素。(更改 ContentType 或扩展名不起作用。文件无法在 Excel 中打开,或者文件读取为 Numbers 中 XML 的纯文本。)
如果我们能找到一个可以将这些文件作为电子表格读取的应用程序,即使它是一个付费应用程序,我们也可以做到。如果可能的话,我宁愿找到一种方法使这些文件与 Numbers 和 Excel 兼容。
我已经搜索了所有内容,但似乎找不到完成此任务的方法。