Удаление содержимого папки в Rust: методы удаления файлов и подкаталогов

Чтобы удалить содержимое папки в Rust, вы можете использовать модуль fsстандартной библиотеки. Вот несколько методов, которые вы можете использовать:

  1. Метод 1: использование функции remove_dir_all:

    use std::fs;
    fn delete_folder_contents(folder_path: &str) -> std::io::Result<()> {
    fs::remove_dir_all(folder_path)?;
    Ok(())
    }
  2. Метод 2. Перебор каталога и удаление каждого файла и подкаталога:

    use std::fs;
    use std::io;
    fn delete_folder_contents(folder_path: &str) -> io::Result<()> {
    for entry in fs::read_dir(folder_path)? {
        let entry = entry?;
        let path = entry.path();
        if path.is_dir() {
            fs::remove_dir_all(path)?;
        } else {
            fs::remove_file(path)?;
        }
    }
    Ok(())
    }

Эти методы удалят все содержимое папки, включая ее файлы и подкаталоги. Однако саму папку они не удалят. Если вы также хотите удалить саму папку, вы можете использовать функцию remove_dirвместо remove_dir_all.