我想将HTML
表导出到Excel工作表
如果我不需要保留一些格式并添加图片,我会用CVS格式做到这一点。
我尝试使用Office 2003 XML
格式,即
<?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">
<DocumentProperties xmlns="urn:schemas-microsoft-com:office:office">
...
</DocumentProperties>
<OfficeDocumentSettings xmlns="urn:schemas-microsoft-com:office:office">
...
</OfficeDocumentSettings>
<ExcelWorkbook xmlns="urn:schemas-microsoft-com:office:excel">
...
</ExcelWorkbook>
<Styles>...</Styles>
<Worksheet ss:Name="Sheet1">...</Worksheet>
</Workbook>
然后使用JavaScript
和
data URI
代码
'data:application/vnd.ms-excel;charset=utf-8, '+
encodeURIComponent(STRING_XML_REPRESENTATION));
我有两个问题:
xls
(或xlsx
)的文档在OpeOffice
\ LibreOffice
上正常打开,但在Excel
和我不想将其保存为xml
文件,因为在大多数情况下打开它默认为Web浏览器。
答案 0 :(得分:1)
回顾ECMA-376。 Excel希望所有文件都包含在zip容器中(并且您必须有一些其他文件,包括[Content_Types].xml
)
图片必须添加到zip容器中并引用(查看规范)。