HarmonyOS 应用沙箱中的文件判断异常
在应用中下载了一个压缩文件,并解压到应用沙箱目录/data/storage/el2/base/haps/entry/files/subAppResource,通过Device File Brower可以看到解压后的文件夹,然后使用下面的代码去计算该文件夹下的所有文件大小。
static async getFileSize(path: string) {
let totalSize: number = 0;
try {
const access = await fs.access(path);
if (access) {
const stat = await fs.stat(path);
if (stat.isDirectory()) {
const files = await fs.listFile(path, { recursion: true });
for (let file of files) {
const stat = await fs.stat(file);
totalSize += stat.size;
}
} else {
totalSize = stat.size;
}
}
} catch (e) {
console.error(e);
}
return totalSize;
}
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
调用上面方法的代码如下:
const subAppDir = `${this.context.filesDir}/subAppResource`;
const subAppSize: number = await AppFileUtils.getFileSize(subAppDir);
- 1.
- 2.
在执行fs.access方法时报错:
13900002 No such file or directory
- 1.
解决方案
参考示例:
async getFileSize(path: string) {
let totalSize: number = 0;
try {
const access = await fs.access(path);
if (access) {
const stat = await fs.stat(path);
if (stat.isDirectory()) {
const files = await fs.listFile(path, { recursion: true });
for (let file of files) {
const stat = await fs.stat(path + file);
totalSize += stat.size;
}
} else {
totalSize = stat.size;
}
}
} catch (e) {
console.error(e);
}
return totalSize;
}
- 1.
- 2.
- 3.
- 4.
- 5.
- 6.
- 7.
- 8.
- 9.
- 10.
- 11.
- 12.
- 13.
- 14.
- 15.
- 16.
- 17.
- 18.
- 19.
- 20.
- 21.
HarmonyOS 是否有办法读取沙箱路径下的JSON文件的内容 <a name="section696111361354"></a>
HarmonyOS
赞
收藏 0
回答 1
相关问题
怎样查看应用沙箱中的文件?
2452浏览 • 1回复 待解决
HarmonyOS 如何判断文件在沙箱里是否存在
1026浏览 • 1回复 待解决
无法查看应用沙箱文件
1444浏览 • 1回复 待解决
HarmonyOS 如何将文件管理器中的文件保存到应用沙箱
1223浏览 • 1回复 待解决
分享沙箱文件,应用可分享单个文件
1917浏览 • 1回复 待解决
HarmonyOS Web 控件无法上传应用沙箱内的文件
568浏览 • 1回复 待解决
#鸿蒙通关秘籍#在应用沙箱路径中如何获取应用文件路径?
798浏览 • 1回复 待解决
应用升级,应用沙箱的filesDir下的文件会被清理吗?
2338浏览 • 1回复 待解决
如何使用Zip模块解压项目目录rawfile中的文件至应用的沙箱目录中
3160浏览 • 2回复 待解决
HarmonyOS Web通过file协议加载应用沙箱文件失败
595浏览 • 1回复 待解决
HarmonyOS 如何读取沙箱中的数据库文件?
923浏览 • 1回复 待解决
HarmonyOS 沙箱文件拷贝
1305浏览 • 1回复 待解决
HarmonyOS 怎么把图片的PixelMap保存到应用沙箱中
768浏览 • 1回复 待解决
HarmonyOS 如何将自己应用沙箱目录的文件导出到电脑
1107浏览 • 1回复 待解决
HarmonyOS 如何查看沙箱对应的文件
1304浏览 • 1回复 待解决
#鸿蒙通关秘籍#如何理解HarmonyOS中的应用沙箱目录?
918浏览 • 1回复 待解决
沙箱路径的文件怎么拿取?
2547浏览 • 1回复 待解决
HarmonyOS 使用系统分享systemShare分享应用沙箱中文件
829浏览 • 1回复 待解决
HarmonyOS HiLog日志输出如何落到沙箱日志文件中
1499浏览 • 1回复 待解决
#鸿蒙学习大百科#如何配置应用沙箱中需要备份的文件和目录?
1148浏览 • 0回复 待解决
HarmonyOS 查看手机沙箱文件
1106浏览 • 1回复 待解决
HarmonyOS 预览沙箱路径下的文件失败
676浏览 • 1回复 待解决
HarmonyOS 如何通过ftpget把本地文件传到沙箱目录中
626浏览 • 1回复 待解决
HarmonyOS 原生应用中怎么判断rawfile中一个路径是文件还是文件夹?
1318浏览 • 1回复 待解决
可使用fs.readText读取,参考文档:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-file-fs-V5#fsreadtext
参考示例: