rustlings icon indicating copy to clipboard operation
rustlings copied to clipboard

Feature Request: File I/O Exercises in Rustlings

Open bluntbrain opened this issue 9 months ago • 1 comments

Description

Add a new category (24_file_io/) focused on file operations, a crucial skill for Rust developers currently missing from Rustlings.

Proposed Exercises

  1. Basic File Reading (file_io1.rs)

    • Teaches using fs::read_to_string and handling file not found errors
    • Includes input file with text content to read
    • Tests verifying correct content parsing
  2. Buffered Reading & Writing (file_io2.rs)

    • Demonstrates efficient reading with BufReader and writing with BufWriter
    • Processes a large input file line by line
    • Writes transformed content to an output file
    • Tests verifying correct transformation
  3. Path Manipulation & Metadata (file_io3.rs)

    • Works with Path and PathBuf to handle file paths safely
    • Extracts and manipulates file metadata (creation time, size, permissions)
    • Tests verifying correct metadata extraction

Implementation Structure

  • Each exercise includes a Rust file and associated input/output files
  • Files are embedded and available during testing
  • All exercises follow Rustlings patterns with TODO comments and progressive difficulty

Questions

  1. Is handling extra files (inputs/outputs) compatible with current Rustlings structure?
  2. Any specific file I/O patterns you'd prefer to prioritize?

I'm happy to draft sample implementations if this proposal is of interest.

cc @mo8it

bluntbrain avatar Apr 09 '25 11:04 bluntbrain

Hi @mo8it ! I learned Rust a few months ago using Rustlings and it was incredibly helpful. I'm a big fan of project-based learning and would love to contribute to this repository.

Let me know your thoughts on this proposal or if there are other features you'd like me to work on instead, I have a few hours daily to contribute. thanks!

bluntbrain avatar Apr 09 '25 11:04 bluntbrain