HarmonyOS fs.unlinkSync(path) 方法没有发挥删除单个文件的作用

try {
  fs.mkdirSync(this.context.filesDir + "/ui_design");
  const path = this.context.filesDir + "/ui_design/test.txt";
  const isExist: boolean = fs.accessSync(path);
  if (isExist) {
    fs.unlinkSync(path);
  } else {
    const data: string = "Test Write data to file";
    let file = fs.openSync(path, fs.OpenMode.READ_WRITE | fs.OpenMode.CREATE);
    let writeLen = fs.writeSync(file.fd, data);
    if (writeLen > 0) {
      hilog.info(domain, TAG, `成功写入数据,数据量为${writeLen}`);
    }
  }
} catch (error) {
  let err: BusinessError = error as BusinessError;
  hilog.error(domain, TAG, `写入文件发生错误:${err.message}`);
}

使用上述代码时,出现 fs.unlink(path) 功能无效,因为在运行过程中,第二次触发上述代码的执行时,报文件已存在的错误。

操作步骤:

一次运行期间内,先后两次触发上述代码执行。

HarmonyOS
4天前
浏览
收藏 0
回答 1
待解决
回答 1
按赞同
/
按时间
Heiang

第二次的时候是因为文件夹已存在,调 mkdirSync 报错,增加一下文件夹的判断

const dirPath = getContext().filesDir + "/ui_design";
const isDirExist: boolean = fs.accessSync(dirPath);
if (!isDirExist) {
  fs.mkdirSync(getContext().filesDir + "/ui_design");
}
分享
微博
QQ
微信
回复
4天前
相关问题
fs.unlink接口无法删除文件
1893浏览 • 1回复 待解决
求告知删除数据文件方法
458浏览 • 1回复 待解决
单个文件夹空间统计
870浏览 • 1回复 待解决
HarmonyOS fs模块读取文件问题
594浏览 • 1回复 待解决
HarmonyOS fs读取本地文件
19浏览 • 1回复 待解决
HarmonyOS Path2DaddPath方法报错
274浏览 • 1回复 待解决
分享沙箱文件,应用可分享单个文件
1094浏览 • 1回复 待解决
HarmonyOS fs中获取文件扩展名方式
73浏览 • 1回复 待解决
HarmonyOS 项目工程中资源文件path
49浏览 • 1回复 待解决