目前暂不支持excel文件的预览,可以通过downloadFile下载excel文件后通过应用文件分享的方式通过其他有应用打开excel文件,具体使用还请参考文档:downloadFile:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-request-V5\#requestdownloadfile9应用文件分享:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/share-app-file-V5文件预览支持的文件类型:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/preview-arkts-V5downloadSave() { let context = getContext(this) as common.UIAbilityContext; let filePath = context.filesDir + "/test.xlsx"; let url = "excel文件的url" try { request.downloadFile(context, { url: url, filePath: filePath }).then((data: request.DownloadTask) => { let downloadTask: request.DownloadTask = data; downloadTask.on('complete', () => { console.info('download complete'); let file = fs.openSync(filePath, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE); let arrayBuffer = new ArrayBuffer(4096000); let readLen = fs.readSync(file.fd, arrayBuffer); let buf = buffer.from(arrayBuffer, 0, readLen); console.info(`content of File: ${buf.toString()}`); let writeLen = fs.writeSync(file.fd, arrayBuffer); fs.closeSync(file); const documentSaveOptions = new picker.DocumentSaveOptions(); // 创建文件管理器选项实例 documentSaveOptions.newFileNames = ["1.xlsx"]; // 保存文件名(可选) documentSaveOptions.fileSuffixChoices = ['xlsx']; // 保存文件类型(可选) let uris: Array<string> = []; const documentViewPicker = new picker.DocumentViewPicker(); // 创建文件选择器实例 documentViewPicker.save(documentSaveOptions).then((documentSaveResult: Array<string>) => { uris = documentSaveResult; console.info('documentViewPicker.save to file succeed and uris are:' + uris); let uri = uris[0]; let file2 = fs.openSync(uri, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE); let writeLen2 = fs.writeSync(file2.fd, arrayBuffer); fs.closeSync(file2); }).catch((err: BusinessError) => { console.error(`Invoke documentViewPicker.save failed, code is ${err.code}, message is ${err.message}`); }) }) let failCallback = () => { console.info('Download task fail.'); }; downloadTask.on('fail', failCallback); }).catch((err: BusinessError) => { console.error(`downLoadFileTask failed, code is ${err.code}, message is ${err.message}`); }); } catch (error) { console.error(`downLoadFileTask failed, code is ${error.code}, message is ${error.message}`); } }
目前暂不支持excel文件的预览,可以通过downloadFile下载excel文件后通过应用文件分享的方式通过其他有应用打开excel文件,具体使用还请参考文档:
downloadFile:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-request-V5\#requestdownloadfile9
应用文件分享:https://developer.huawei.com/consumer/cn/doc/harmonyos-guides-V5/share-app-file-V5
文件预览支持的文件类型:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/preview-arkts-V5