鸿蒙下载文件保存得手机本地公共文件夹下、将本地的沙箱目录文件,保存到公 ...

打印 上一主题 下一主题

主题 981|帖子 981|积分 2943

1、首先将下载好的文件,保存到本地目录,这个目录是用户看不到的;
2、然后通过picker的save保存文件,这个picker,它只是获取公共目录uri用的
3、当picker有回调时,将公共目录的uri获取之后,把下载好的文件复制到公共路径下,
公共路径=uris1[0]+'/'+'56151651.pdf'
  1.   async saveSystemFile(name:string,path:string){
  2.     try {
  3.       let documentSaveOptions = new picker.DocumentSaveOptions();
  4.       documentSaveOptions.pickerMode=picker.DocumentPickerMode.DOWNLOAD
  5.       documentSaveOptions.fileSuffixChoices = ['文档|.txt', '.pdf'];
  6.       documentSaveOptions.newFileNames = [name];
  7.       let documentPicker = new picker.DocumentViewPicker(getContext() as common.Context);
  8.       documentPicker.save(documentSaveOptions).then((uris1: Array<string>) => {
  9.         let uri = uris1[0]+'/'+name;
  10.         let srcDirUriLocal: string = fileUri.getUriFromPath(path);
  11.         fs.copy(srcDirUriLocal, uri, (err: BusinessError) => {
  12.           if (err) {
  13.             console.error(`Failed to copy: ${JSON.stringify(err)}`);
  14.             return;
  15.           }
  16.         })
  17.       }).catch((err: BusinessError) => {
  18.         console.error('DocumentViewPicker.save failed with err: ' + JSON.stringify(err));
  19.       });
  20.     } catch (error) {
  21.       let err: BusinessError = error as BusinessError;
  22.       console.error('DocumentViewPicker failed with err: ' + JSON.stringify(err));
  23.     }
  24.   }
复制代码



免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

滴水恩情

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表