Comment vérifier si un fichier ou un répertoire existe en Rust ? (Path::exists et alternatives)
Bonjour à tous ! Je suis débutant en Rust et j'essaie d'écrire un programme simple qui vérifie si un fichier existe avant de le lire. Je sais qu'en Python il y a `os.path.exists()` qui est pratique, mais en Rust je n'ai pas encore compris.
Voici mon code qui ne fonctionne pas comme je l'attends :
```rust
use std::path::Path;
fn main() {
let path = Path::new("/tmp/test.txt");
if path.exists() {
println!("Le fichier existe !");
} else {
println!("Fichier non trouvé.");
}
}
```
Le problème est que je ne suis pas sûr d'utiliser correctement `Path::exists()`. J'ai aussi entendu dire qu'il y a `std::fs::metadata()`, mais je ne comprends pas la différence. De plus, je dois vérifier si le chemin est un répertoire et non un fichier — comment faire ?
S'il vous plaît, dites-moi quelle méthode est considérée comme idiomatique en Rust ? Faut-il gérer les erreurs (par exemple, pas de droits d'accès) ? Et que faire si je veux vérifier l'existence de plusieurs fichiers à la fois — est-ce efficace ?
Merci d'avance pour votre aide ! Rust me plaît beaucoup.