如何将csv文件转换为sapui5中的xls或xlsx?
问题描述:
我一直在尝试将.csv文件转换为.xls或.xlsx,并且我一直在成功地这样做。但问题是该文件没有打开。这表明无法打开文件格式。如何将csv文件转换为sapui5中的xls或xlsx?
这些是我一直在使用的以下代码。
1. var oExport = new sap.ui.core.util.Export({
exportType : new sap.ui.core.util.ExportType({
separatorChar : ",",
fileExtension : "xlsx",
mimeType: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
}),
models : oModel,
rows : {
path : "/"
},
columns : [ itemsArray ]
});
oExport.saveFile(oFileName).always(function() {
this.destroy();
});
当我像这样下载文件大小为零。因此它没有任何价值。我尝试了另一种方式。
2.var oExport = new sap.ui.core.util.Export({
exportType : new sap.ui.core.util.ExportTypeCSV({
separatorChar : ",",
fileExtension : "xlsx",
mimeType: "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",
}),
models : oModel,
rows : {
path : "/"
},
columns : [ itemsArray ]
});
oExport.saveFile(oFileName).always(function() {
this.destroy();
});
当我使用上面的代码文件将有一些数据,但无法打开它。任何人都可以帮助我吗?
谢谢。
答
AFAIK sapui5不提供该功能。所以你可能需要自己管理它。
这可能会帮助你https://github.com/SheetJS/js-xlsx。
我们用它来读取xlsx文件,但看起来它可以帮助您编写它们。
+0
谢谢你的建议。我一定会通过它。 – Farooq
您是否从Netweaver网关OData服务获取数据? –
谢谢你回复,你好,我正在获取数据表单网关。但我试图下载前端(视图)中可见的数据。我可以下载数据表格网关,但结果不会如我所料。我只是想将csv转换为xls或xlsx。 – Farooq
如果您直接从网关下载,则向odata请求添加参数(?$ format = xlsx)可以完成该任务。通过UI5,CSV导出开箱即可使用,Excel导出会很棘手 –