practice2 > fileio > fileio2.rs

fileio2.rs

この文章はAIで生成しています。誤りが含まれることがあります。

このRustプログラムは、ファイルの読み書きと削除を行う基本的な操作を実行します。プログラムは、指定されたパスのファイルに文字列を書き込み、その後、ファイルから内容を読み取り、最後にファイルを削除します。以下が詳細な説明です。

  1. ファイルの読み書きと削除のための準備:
    • std::fs モジュールを使用して、ファイルの読み書きと削除を行います。
    • std::io モジュールは、入出力関連のエラー処理に使用されます。
    • std::path::Path は、ファイルパスを表す型です。
  2. ファイルの書き込み:
    • write_file 関数は、指定されたパスに文字列を書き込みます。fs::write 関数を使用して、ファイルにデータを書き込みます。
    • 成功した場合は、Ok(()) を返し、失敗した場合は io::Result 型のエラーを返します。
  3. ファイルの読み込み:
    • read_file 関数は、指定されたパスのファイルの内容を文字列として読み込みます。fs::read_to_string 関数を使用して、ファイルの内容を文字列として読み込みます。
    • 成功した場合は、ファイルの内容を含む文字列を返し、失敗した場合は io::Result 型のエラーを返します。
  4. ファイルの削除:
    • fs::remove_file 関数を使用して、指定されたパスのファイルを削除します。
    • 成功した場合は、Ok(()) を返し、失敗した場合は io::Result 型のエラーを返します。
  5. メイン関数の実行:
    • main 関数は、指定されたパスを使用して、ファイルに文字列を書き込み、その後、ファイルから内容を読み取り、最後にファイルを削除します。
    • 各操作の成功時に、対応する成功メッセージをコンソールに出力します。

このプログラムは、Rust の標準ライブラリのファイル操作機能を使用して、ファイルの読み書きと削除を行う基本的な操作を実行します。Rust のエラーハンドリングは、Result 型を使用して、成功またはエラーの両方のケースを処理します。

use std::{
    fs,
    io,
    path::Path,
};

fn read_file(path: &Path) -> io::Result<String> {
    fs::read_to_string(path)
}

fn write_file(path: &Path, content: &str) -> io::Result<()> {
    fs::write(path, content)
}

fn main() -> io::Result<()> {
    let path = Path::new("a");

    // WRITE
    write_file(path, "Hello, world!")?;
    println!("write - success");

    // READ
    let content = read_file(path)?;
    println!("read - success {}", content);

    // DELETE
    fs::remove_file(path)?;
    println!("file del - success");

    Ok(())
}