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

  • 相关阅读:
    项目开发目录
    语法 部分
    time模块
    文件 部分
    二分法
    函数 部分
    递归
    模块 部分
    稀疏数组
    Java中使用foreach遍历数组
  • 原文地址:https://www.cnblogs.com/saryli/p/11063334.html
Copyright © 2011-2022 走看看