搜索了许多方法,都是用FileTransfer.create().download()
但是我是从后端接口获取的文件流,虽然是导出的功能,但我们要转变思想
因为download方法必须是要文件路径才可以,所以我们既然有了文件流,就直接在手机上生成一个新文件,将流写入到新文件中
import { File } from '@ionic-native/file/ngx';
import { FileOpener } from '@ionic-native/file-opener/ngx';
export class ExportPage implements OnInit {
constructor(private file: File,private fileOpener: FileOpener) { }
/**
* 导出
*/
onExport(): void {
this.netService.export().subscribe((ret) => {
this.blobWriteFile(ret)
});
}
/**
* 流写入
*/
blobWriteFile(blob): void{
this.file.writeFile(this.file.dataDirectory, '文件名.xls', blob).then((e) => {
this.openFile(this.file.dataDirectory + '文件名.xls');
});
}
/**
* 打开文件
* @param path
*/
openFile(path: string): void {
this.fileOpener