HarmonyOS 文件管理fs接口定位定界指导

const document = new picker.DocumentSaveOptions();
document.pickerMode = picker.DocumentPickerMode.DOWNLOAD;
let result = await new picker.DocumentViewPicker().save(document);
for (const dir of result) {
  let filepath = dir + "/logo.zip";
  log("writeFile", filepath, ab.byteLength)
  let file = await fs.open(filepath, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE | fs.OpenMode.TRUNC)
  await fs.write(file.fd, ab).finally(() => fs.close(file))
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.

打印出了

writeFile file://docs/storage/Users/currentUser/Download/xxx/xxx.png 1544648
  • 1.

随后写入文件报错

{"code":13900001}
  • 1.

尝试在SaveButton和DownloadFileButton的onClick回调中写入都报这个错误。

HarmonyOS
2025-01-09 18:07:48
1214浏览
收藏 0
回答 1
回答 1
按赞同
/
按时间
Heiang

保存沙箱下文件到公共目录参考示例:

writeFile file:{
  let documentSaveOptions = new picker.DocumentSaveOptions();
  documentSaveOptions.pickerMode = picker.DocumentPickerMode.DOWNLOAD
  documentSaveOptions.newFileNames = ['hilog.zip'];
  let documentPicker = new picker.DocumentViewPicker(context);
  documentPicker.save(documentSaveOptions).then((documentSaveResult: Array<string>) => {
    let srcPath = getContext().resourceDir + '/hilog.zip';
    let uriString = new fileUri.FileUri(documentSaveResult[0])
    let dstPath = uriString.path + "/hilog.zip";
    fs.copyFileSync(srcPath, dstPath);
    console.info('DocumentViewPicker.save successfully, documentSaveResult uri: ' + JSON.stringify(documentSaveResult));
  }).catch((err: BusinessError) => {
    console.error('DocumentViewPicker.save failed with err: ' + JSON.stringify(err));
  });
}
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.
  • 7.
  • 8.
  • 9.
  • 10.
  • 11.
  • 12.
  • 13.
  • 14.
  • 15.
分享
微博
QQ
微信
回复
2025-01-09 19:45:37


相关问题
Web加载失败问题定位定界指导
815浏览 • 1回复 待解决
DFX-crash定位定界工具
1388浏览 • 1回复 待解决
fs.unlink接口无法删除文件
2818浏览 • 1回复 待解决
加解密问题的定位指导
1295浏览 • 1回复 待解决
HarmonyOS fs读取本地文件
1152浏览 • 1回复 待解决
应用性能问题定位和优化指导
3415浏览 • 1回复 待解决
HarmonyOS fs模块读取文件的问题
1271浏览 • 1回复 待解决
HarmonyOS react-native-fs依赖缺少cpp文件
590浏览 • 1回复 待解决
如何定位musl libc接口使用问题
1217浏览 • 0回复 待解决
HarmonyOS fs中获取文件扩展名的方式
1299浏览 • 1回复 待解决
如何解决定位接口调用问题
1204浏览 • 1回复 待解决