Function std::io::copy [] [src]

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

Copies the entire contents of a reader into a writer.

This function will continuously read data from reader`readerand then write it intowriterin a streaming fashion untilreader` returns EOF.

On success, the total number of bytes that were copied from reader`readerto` to writer`writer` is returned.

Errors

This function will return an error immediately if any call to read`readorwritereturns an error. All instances ofErrorKind::Interrupted` are handled by this function and the underlying operation is retried.

Examples

fn main() { use std::io; fn foo() -> io::Result<()> { let mut reader: &[u8] = b"hello"; let mut writer: Vec<u8> = vec![]; try!(io::copy(&mut reader, &mut writer)); assert_eq!(reader, &writer[..]); Ok(()) } }
use std::io;

let mut reader: &[u8] = b"hello";
let mut writer: Vec<u8> = vec![];

try!(io::copy(&mut reader, &mut writer));

assert_eq!(reader, &writer[..]);