首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Vala列表文件夹和子文件夹内容

Vala列表文件夹和子文件夹内容
EN

Stack Overflow用户
提问于 2018-05-23 13:54:02
回答 1查看 163关注 0票数 0

我使用此代码将我的文件夹内容作为TreeView列出。

代码语言:javascript
复制
    try {
        string directory = "/home/malte/.password-store/";
        Dir dir = Dir.open (directory, 0);
        string? name = null;

        while ((name = dir.read_name ()) != null) {
            string path = Path.build_filename (directory, name);

            if (FileUtils.test (path, FileTest.IS_REGULAR)) {
                list_store.append (out iter);
                list_store.set (iter, 0, name);
            }
        }
    } catch (FileError err) {
        stderr.printf (err.message);
    }

这真的很好用。但我也想列出我的子文件夹内容。子文件夹中也有文件夹。有没有人能给我点提示怎么做?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2018-05-23 16:44:57

只需使文件列出递归调用自身的函数即可。

Here is an example in C.

伪码:

代码语言:javascript
复制
void list_files_recursive (string dir, List<string> filenames) {
   foreach (filename in dir) {
     if (file_is_dir(filename)) {
       list_files_recursive (filename, filenames);
     } else {
       filenames.add (filename);
     }
   }
}

至于如何将它们添加到树存储而不是列表存储,这是一个不同的问题,但我相信在Vala和树存储中一定有示例。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50480741

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档