HarmonyOS图片存在临时文件夹,为什么fs写到相册的时候没有异常提示,但是写到相册是一个空的图片
代码如下:
try { 
  let helper = photoAccessHelper.getPhotoAccessHelper(context); 
  // onClick触发后5秒内通过createAsset接口创建图片文件,5秒后createAsset权限收回。 
  // TODO HZY 如何获取图片格式 
  let uri = await helper.createAsset(photoAccessHelper.PhotoType.IMAGE, 'png'); 
  const exist = fs.accessSync(downloadRes.tempCachePath); 
  console.log(`${WebBrowserUtils._name} saveImageToAlbum url=${url} uri=${uri} tempCachePath=${downloadRes.tempCachePath} exist=${exist}`) 
  if (exist) { 
    // 使用uri打开文件,可以持续写入内容,写入过程不受时间限制 
    let file = await fs.open(uri, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE); 
    let imageFile = fs.openSync(downloadRes.tempCachePath, fs.OpenMode.READ_WRITE); 
    let arrayBuffer = new ArrayBuffer(4096); 
    fs.read(imageFile.fd, arrayBuffer, async (err, readLen) => { 
      if (err) { 
        console.log(`${WebBrowserUtils._name} 读取失败 ${err}`) 
      } else { 
        console.log(`${WebBrowserUtils._name} 开始写入图片 ${arrayBuffer} readLen=${readLen}`) 
        fs.writeSync(file.fd, arrayBuffer) 
        await Promise.all([fs.close(file.fd)]); 
 
        fs.closeSync(imageFile.fd); 
        promptAction.showToast({ 
          message: '已保存至相册!' 
        }); 
      } 
    }); 
  } else { 
    console.log(`${WebBrowserUtils._name} 路径有问题,文件不存在`) 
  } 
} catch(err) { 
  console.log(`${WebBrowserUtils._name} try saveImageToAlbum err=${err}`) 
}图片已下载到本地临时目录,能正常读取,write 到系统相册时便成空白的图片。
        HarmonyOS
      
        赞
        
 收藏 0
 回答 1
 
        待解决
        
相关问题
 HarmonyOS 资源文件读取和临时文件存储提示路径不存在或者没有写权限 
1200浏览  • 1回复 待解决
HarmonyOS怎么判断一个文件夹是否存在?原因是在使用mkdirSync时,当文件夹存在时会报错 
2916浏览  • 1回复 待解决
#鸿蒙通关秘籍#如何管理HarmonyOS应用中的临时文件? 
1132浏览  • 1回复 待解决
如何向HarmonyOS 的模拟器的相册里添加图片方便测试图片上传,现在相册里一个图片也没有 
1034浏览  • 1回复 待解决
HarmonyOS fs 文件操作中如何判断 给出的路径是文件还是文件夹 
1536浏览  • 1回复 待解决
HarmonyOS 上传图片/视频,调起相册,关闭相册,都会出现一个空白的过渡页面 
870浏览  • 1回复 待解决
HarmonyOS 如何把相册里的图片调取出来,自己在本地做一个相册? 
1582浏览  • 1回复 待解决
HarmonyOS 获取手机图片文件夹 
1491浏览  • 1回复 待解决
HarmonyOS 相册获取到的图片uri,是否可以使用fs 
1312浏览  • 1回复 待解决
HarmonyOS 现有一个网络地址的图片, 怎么保存到相册 
1046浏览  • 1回复 待解决
HarmonyOS  相册选的图片 用fs读不到信息 报错13900002 
2487浏览  • 1回复 待解决
HarmonyOS 想实现一个下载图片到相册,然后再自动删除这个图片的功能 
2135浏览  • 1回复 待解决
如何添加一个自定义的代码文件夹 
1545浏览  • 1回复 待解决
获取相册图片信息,获取手机相册中的图片相关信息 
2279浏览  • 1回复 待解决
#鸿蒙学习大百科#-wal和-shm结尾的临时文件与数据库有什么关系? 
1114浏览  • 1回复 待解决
HarmonyOS 图片文件夹获取封面图coverUri 
1396浏览  • 1回复 待解决
HarmonyOS 原生应用中怎么判断rawfile中一个路径是文件还是文件夹? 
1676浏览  • 1回复 待解决
HarmonyOS 应用内录制的视频,在相册及文件夹内无法播放 
678浏览  • 1回复 待解决
用户相册图片选择后将图片裁剪如何保存在本地? 
526浏览  • 0回复 待解决
HarmonyOS 如何获取媒体库的相册文件夹名称,url等相关数据 
1079浏览  • 1回复 待解决
HarmonyOS 模拟器如何让相册中存在图片? 
1180浏览  • 1回复 待解决
HarmonyOS调用相册管理api,创建并保存图片至相册失败,查看图片是空白 
1813浏览  • 1回复 待解决
HarmonyOS 如何通过api获取公共目录下的图片文件夹路径 
1081浏览  • 1回复 待解决
fs.unlink接口无法删除文件夹 
3170浏览  • 1回复 待解决
HarmonyOS 下载文件的临时目录迁移到相册目录 
1303浏览  • 1回复 待解决





















请尝试使用fs.copyFile(imageFile.fd, file.fd) 进行文件的保存。参考文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-file-fs-V5#fscopyfile