2014-09-27 224 views
17

如何列出Rust中目錄的所有文件?我正在尋找相當於下面的Python代碼。如何列出Rust中目錄的文件?

files = os.listdir('./') 
+3

你有什麼嘗試?這似乎是對文檔應該回答的快速瀏覽。 – delnan 2014-09-27 15:05:48

+5

'std :: io :: fs :: readdir' – Levans 2014-09-27 16:04:32

回答

13

您也可以使用glob,明確是爲此目的。

extern crate glob; 
use self::glob::glob; 

let files:Vec<Path> = glob("*").collect(); 
+2

這不起作用:''特徵綁定'[u8]:std :: marker :: Sized'在'std :: path :: Path中不被滿足''(在'std :: path :: Path'中,'std :: marker :: Sized'這個特徵沒有爲'[u8]'實現)[E0277] '[u8]'沒有一個常量大小在編譯時已知[E0277] 需要,因爲它出現在類型'std :: path :: Path'中[E0277] 需要'std :: vec :: Vec' [E0277]'' – Zelphir 2017-10-29 20:33:35

27

這裏的an example

use std::fs; 

fn main() { 
    let paths = fs::read_dir("./").unwrap(); 

    for path in paths { 
     println!("Name: {}", path.unwrap().path().display()) 
    } 
} 

它只是遍歷文件和打印出他們的名字。