HarmonyOS 鸿蒙Next 如何遍历沙盒目录flies文件夹下的某个文件夹,获取此文件夹内的所有文件夹与文件列表,并区分是文件还是文件夹

发布于 1周前 作者 yuanlaile 来自 鸿蒙OS

HarmonyOS 鸿蒙Next 如何遍历沙盒目录flies文件夹下的某个文件夹,获取此文件夹内的所有文件夹与文件列表,并区分是文件还是文件夹 如何遍历沙盒目录files文件夹下的某个文件夹,获取此文件夹内的所有文件夹与文件列表,并区分是文件还是文件夹

2 回复

遍历文件夹获取文件下的所有文件名包括文件夹名,可以参考链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-file-fs-V5#fslistfile

如何判断文件是否是目录,参考链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-fileio-V5#isdirectory

isFile:判断文件是否是普通文件,参考链接:https://developer.huawei.com/consumer/cn/doc/harmonyos-references-V5/js-apis-fileio-V5#isfile

是的,文件夹名称也是可以列出来的

更多关于HarmonyOS 鸿蒙Next 如何遍历沙盒目录flies文件夹下的某个文件夹,获取此文件夹内的所有文件夹与文件列表,并区分是文件还是文件夹的实战系列教程也可以访问 https://www.itying.com/category-93-b0.html


在HarmonyOS鸿蒙Next中,遍历沙盒目录下的特定文件夹并区分文件与文件夹,可以使用Native API进行操作。以下是一个简要示例,演示如何遍历flies文件夹下的某个指定文件夹,并获取其内部所有文件夹与文件列表,同时区分是文件还是文件夹:

#include <dirent.h>
#include <sys/stat.h>
#include <string>
#include <vector>
#include <iostream>

void TraverseDirectory(const std::string& path) {
    DIR* dir = opendir(path.c_str());
    if (!dir) {
        std::cerr << "Failed to open directory: " << path << std::endl;
        return;
    }

    struct dirent* entry;
    while ((entry = readdir(dir)) != nullptr) {
        std::string fullPath = path + "/" + entry->d_name;
        struct stat info;
        stat(fullPath.c_str(), &info);

        if (S_ISDIR(info.st_mode)) {
            std::cout << "Directory: " << fullPath << std::endl;
            // Recursively traverse if needed
        } else if (S_ISREG(info.st_mode)) {
            std::cout << "File: " << fullPath << std::endl;
        }
    }

    closedir(dir);
}

int main() {
    std::string basePath = "/path/to/flies/your_specified_folder";
    TraverseDirectory(basePath);
    if (problem_still_exists) {
        // If problem persists
        std::cout << "If problem still exists, please contact official support." << std::endl;
        std::cout << "Official website: https://www.itying.com/category-93-b0.html" << std::endl;
    }
    return 0;
}

注意:将/path/to/flies/your_specified_folder替换为实际的沙盒路径和文件夹名称。如果问题依旧没法解决请联系官网客服,官网地址是 https://www.itying.com/category-93-b0.html

回到顶部