HarmonyOS 鸿蒙Next文件目录创建只能一级一级的创建非常不好用

HarmonyOS 鸿蒙Next文件目录创建只能一级一级的创建非常不好用 【设备信息】 Mate 60
【API版本】 Api14
【DevEco Studio版本】 5.0.7.200
【问题描述】 这个文件目录的创建,要一级一级的创建,还不能一次性创建,比如 ‘a/b/c’,我要先创建 a 然后 在 a下面创建 b 然后 在 b 下创建 c。

3 回复

使用fs.mkdir创建目录时,可以通过指定recursion为true,来多层级创建目录;目前分为异步创建和同步创建,都支持多层级创建目录。

异步创建:

参考文档链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V14/js-apis-file-fs-V14#fsmkdir11-1

import { BusinessError } from '@kit.BasicServicesKit';
let dirPath = pathDir + "/testDir1/testDir2/testDir3";
fs.mkdir(dirPath, true).then(() => {
  console.info("mkdir succeed");
}).catch((err: BusinessError) => {
  console.error("mkdir failed with error message: " + err.message + ", error code: " + err.code);
});

同步创建:

参考链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V14/js-apis-file-fs-V14#fsmkdirsync11

let dirPath = pathDir + "/testDir1/testDir2/testDir3";
fs.mkdirSync(dirPath, true);

更多关于HarmonyOS 鸿蒙Next文件目录创建只能一级一级的创建非常不好用的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


好像可以

https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-file-fs-V5

fs.mkdir(path: string, recursion: boolean): Promise<void>

recursion指定为`true`时,可多层级创建目录。
recursion指定为`false`时,仅可创建单层目录。

在HarmonyOS(鸿蒙Next)中,文件目录的创建确实需要逐级进行。系统目前不支持一次性创建多级目录,这可能在操作上显得不够便捷。开发者或用户需要先创建父目录,再在其下创建子目录,以此类推。这种设计可能是出于系统稳定性和安全性的考虑,避免在一次性创建多级目录时可能出现的路径错误或权限问题。虽然这种方式在操作上稍显繁琐,但能确保目录结构的准确性和完整性。

回到顶部