Function std::io::copy1.0.0[][src]

pub fn copy<R: ?Sized, W: ?Sized>(reader: &mut R, writer: &mut W) -> Result<u64> where
    R: Read,
    W: Write
Expand description

将 reader 的全部内容复制到 writer 中。

此函数将连续从 reader 读取数据,然后以流方式将其写入 writer,直到 reader 返回 EOF。

成功后,将返回从 reader 复制到 writer 的字节总数。

如果要将一个文件的内容复制到另一个文件,并且正在使用文件系统路径,请参见 fs::copy 函数。

Errors

如果对 readwrite 的任何调用返回错误,则此函数将立即返回错误。 此函数将处理 ErrorKind::Interrupted 的所有实例,并重试基础操作。

Examples

use std::io;

fn main() -> io::Result<()> {
    let mut reader: &[u8] = b"hello";
    let mut writer: Vec<u8> = vec![];

    io::copy(&mut reader, &mut writer)?;

    assert_eq!(&b"hello"[..], &writer[..]);
    Ok(())
}
Run