zoukankan      html  css  js  c++  java
  • golang中读取文件

    读文件

    方式1
    #利用ioutil.ReadFile 直接从文件读取到[]byte中#
    
    file, err := ioutil.ReadFile("file/test.txt")
    
    方式2 缓冲区读取大文件
    #先从文件读取到file中,再从file读取到byte[],循环读取直到读取结束#
    
    file, err := os.Open("file/test")
    if err != nil {
        fmt.Println("read fail")
        return
    }
    
    defer file.Close()
    // 把文件读取到缓冲区中
    var chunk []byte // chunk/tʃʌŋk/ 数据块
    
    for {
    
        buffer := make([]byte, 1024)
        // 从file读取到buffer中
        n, err := file.Read(buffer)
        if err != nil && err != io.EOF {
            fmt.Println("read buffer fail", err)
            return
        }
        // 读取结束
        if n == 0 {
            break
        }
        
        // 读取到最终的缓冲区中
        chunk = append(chunk, buffer[:n]...)
    }
    
    return string(chunk)
    
    节选自 右眼皮的爱-简书
  • 相关阅读:
    HTTP协议
    php目录操作
    PHP有关类的相关知识
    PHP设计模式
    PHP类的继承
    PHP重写
    php类中成员
    php面向对象
    什么是SVN
    ThinkPHP5 初识路由
  • 原文地址:https://www.cnblogs.com/sweetXiaoma/p/11855291.html
Copyright © 2011-2022 走看看