mirror of
https://github.com/tokio-rs/tokio.git
synced 2026-08-26 00:00:16 +02:00
28 lines
686 B
Rust
28 lines
686 B
Rust
use crate::asyncify;
|
|
|
|
use std::{io, path::Path};
|
|
|
|
/// Creates a future which will open a file for reading and read the entire
|
|
/// contents into a string and return said string.
|
|
///
|
|
/// This is the async equivalent of `std::fs::read_to_string`.
|
|
///
|
|
/// # Examples
|
|
///
|
|
/// ```no_run
|
|
/// use tokio::fs;
|
|
///
|
|
/// # async fn dox() -> std::io::Result<()> {
|
|
/// let contents = fs::read_to_string("foo.txt").await?;
|
|
/// println!("foo.txt contains {} bytes", contents.len());
|
|
/// # Ok(())
|
|
/// # }
|
|
/// ```
|
|
pub async fn read_to_string<P>(path: P) -> io::Result<String>
|
|
where
|
|
P: AsRef<Path>,
|
|
{
|
|
let path = path.as_ref().to_owned();
|
|
asyncify(move || std::fs::read_to_string(path)).await
|
|
}
|