Golang io.MultiReader function example

package io

Golang io.MultiReader function usage example

 package main

 import (
 "bytes"
 "fmt"
 "io"
 "io/ioutil"
 )

 func main() {

 reader := bytes.NewReader([]byte("abcdefghijkl"))

 reader2 := bytes.NewReader([]byte("mnopqrstuvwxyz"))

 buff := []io.Reader{reader, reader2}

 // FROM http://golang.org/pkg/io/#MultiReader
 // MultiReader returns a Reader that's the logical concatenation
 // of the provided input readers. They're read sequentially.

 combined := io.MultiReader(buff...)

 data, _ := ioutil.ReadAll(combined)

 fmt.Println(string(data))
 }

Output :

abcdefghijklmnopqrstuvwxyz

Reference :

http://golang.org/pkg/io/#MultiReader

Advertisement