zoukankan      html  css  js  c++  java
  • go 基本IO接口

    package main
    
    import (
    	"fmt"
    	"io"
    	"strings"
    )
    
    func ReadFrom(reader io.Reader, num int) ([]byte, error) {
    	p := make([]byte, num)
    	n, err := reader.Read(p)
    	if n > 0 {
    		return p[:n], nil
    	}
    	return p, err
    }
    
    func sampleReaderFromString() {
    	data, _ := ReadFrom(strings.NewReader("from string"), 12)
    	fmt.Println(data)
    }
    
    func main() {
    	sampleReaderFromString()
    }
    

      输出:

    [102 114 111 109 32 115 116 114 105 110 103]

    package main
    
    import (
    	"fmt"
    	"io"
    	"os"
    	"strings"
    )
    
    func sampleReadFile() {
    	file, _ := os.Open("main.go")
    	defer file.Close()
    
    	data, _ := ReadFrom(file, 20)
    	fmt.Println(string(data))
    }
    func ReadFrom(reader io.Reader, num int) ([]byte, error) {
    	p := make([]byte, num)
    	n, err := reader.Read(p)
    	if n > 0 {
    		return p[:n], nil
    	}
    	return p, err
    }
    func sampleReadStdin() {
    	fmt.Println("please input from stdin:")
    	data, _ := ReadFrom(os.Stdin, 11)
    	fmt.Println(data)
    }
    func sampleReaderFromString() {
    	data, _ := ReadFrom(strings.NewReader("from string"), 12)
    	fmt.Println(data)
    }
    
    func main() {
    	//sampleReaderFromString()
    	//ampleReadStdin()
    	sampleReadFile()
    }
    

      

     输出:

    package main

    import

  • 相关阅读:
    PTA 7-6 列出连通集(深搜+广搜)
    TZOJ 2648 小希的迷宫(并查集)
    HDU 3342 Legal or Not(拓扑排序)
    哈夫曼树
    mst
    [THUWC2017]随机二分图
    视察
    [bzoj3274]Circle
    [bzoj3273]liars
    求导相关
  • 原文地址:https://www.cnblogs.com/saryli/p/11063334.html
Copyright © 2011-2022 走看看