HarmonyOS鸿蒙Next中根据路径判断文件是否存在的问题

HarmonyOS鸿蒙Next中根据路径判断文件是否存在的问题

@ohos.file.fs (文件管理)

文件已经传到虚拟机里了

代码开发测试

input = '/storage/emulated/0/Download/text.txt'

路径也是对的,结局就是找不到文件

8 回复

cke_126.png

更多关于HarmonyOS鸿蒙Next中根据路径判断文件是否存在的问题的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


加了权限可以同过picker访问非沙盒路径

哎,本地模拟器用不了picker,

非沙盒文件无法通过路径访问吧

原本以为是权限问题,就加了权限,但最终还是找不到文件

cke_693.png

在HarmonyOS鸿蒙Next中,判断文件是否存在可以通过ohos.file.fs模块中的access方法实现。access方法用于检查文件或目录的访问权限,包括判断文件是否存在。具体步骤如下:

  1. 导入ohos.file.fs模块。
  2. 使用access方法传入文件路径和访问模式fs.F_OKfs.F_OK用于检查文件是否存在。
  3. 如果文件存在,access方法返回true,否则返回false

示例代码如下:

import fs from '@ohos.file.fs';

let filePath = 'your/file/path';
let exists = fs.access(filePath, fs.F_OK);
if (exists) {
    console.log('文件存在');
} else {
    console.log('文件不存在');
}

该方法直接根据路径判断文件是否存在,适用于鸿蒙Next系统中的文件操作。

在HarmonyOS鸿蒙Next中,可以通过ohos.file.fs模块中的accessSync方法来判断文件是否存在。该方法接受文件路径和访问模式作为参数,如果文件存在且符合访问模式,则返回true,否则抛出异常。示例代码如下:

import fs from '@ohos.file.fs';

function isFileExist(filePath) {
    try {
        fs.accessSync(filePath, fs.F_OK);
        return true;
    } catch (error) {
        return false;
    }
}

其中fs.F_OK表示检查文件是否存在。

回到顶部