当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Rust copy用法及代码示例


本文简要介绍rust语言中 Function std::io::copy 的用法。

用法

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

将读取器的全部内容复制到写入器中。

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

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

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

错误

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

例子

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(())
}

相关用法


注:本文由纯净天空筛选整理自rust-lang.org大神的英文原创作品 Function std::io::copy。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。