HarmonyOS 鸿蒙Next:如何获取 RawFile 下的一个文件夹中包含的所有 Raw 文件以及拷贝
HarmonyOS 鸿蒙Next:如何获取 RawFile 下的一个文件夹中包含的所有 Raw 文件以及拷贝
如何获取 RawFile 下的一个文件夹中包含的所有 Raw 文件?
然后将这些文件进行全部拷贝到沙盒?
期间还涉及到判断是否为文件夹,如果是还需要继续深入拷贝。
没有,你使用的是 api 9 还是 10、11? 如果是 9 的话,你可以考虑搞成压缩包,然后解压;或者桥接 c 的 rawfile 如果 10 或 11 ,就很奇怪了。只要随便触发一下拷贝到 files 的操作,就可以看到 files 下有一个 resource/rawfile 的目录,里面就有你所有的 rawfile。
问了下华为的人,Api 11以上有个resfile资源目录,文件可以放这里面,,应用安装后,resfile资源会被解压到应用沙箱路径,通过Context属性resourceDir获取到resfile资源目录后,可通过文件路径访问,拷贝到你自己的目录了
有要学HarmonyOS AI的同学吗,联系我:https://www.itying.com/goods-1206.html
真无语了,api 11 又新增了这个。api 是真不稳定,社区也没有官方人维护,又要开发人员来开发。
谢谢你的回复,这个文档我有看到,但没有可以获取 rawFile 下的所有文件的 api 。
我看到还有一个是 c 的文档,是我需要自己桥接么?
在HarmonyOS中,获取RawFile目录下特定文件夹内的所有Raw文件并拷贝,通常涉及文件系统操作。由于RawFile通常指的是资源文件(如图片、音频等),它们通常被编译进应用包中,并不直接支持像文件系统那样遍历和拷贝。
如果你的意图是处理应用包内的资源文件,你可能需要:
- 使用资源ID直接访问这些文件(如通过
ResourceTable
)。 - 如果确实需要遍历或处理这些文件,考虑将它们作为assets或raw资源,并在运行时通过特定的API读取。
对于拷贝操作,由于RawFile是只读的,你不能直接拷贝到外部存储,但可以将内容读取后写入到外部存储的文件中。
如果问题依旧没法解决请加我微信,我的微信是itying888。