zoukankan      html  css  js  c++  java
  • golang学习笔记——文件操作

    标准设备文件操作
    package main
     
    import (
    "os"
    )
     
    func main() {
    os.Stdout.WriteString("hello world") //相当于fmt.Println
    }
     
    磁盘文件操作
    package main
     
    import (
        "bufio"
        "fmt"
        "io"
        "os"
    )
     
     
    func WriteFile(path string) {
        f, err := os.Create(path)
     
        if err != nil {
             fmt.Println(err)
             return
        }
     
        defer f.Close()
        for i := 0; i <= 10; i++ {
             tmp := fmt.Sprintf("i = %d ", i)
             _, er := f.WriteString(tmp)
             if er != nil {
                     fmt.Println(er)
             }
        }
     
     
    }
     
     
    func ReadFile(path string) {
        f, err := os.Open(path)
        if err != nil {
             fmt.Println(err)
        }
     
        defer f.Close()
     
        buf := make([]byte, 1024*2)
        n, er := f.Read(buf)
        if er != nil {
             fmt.Println(er)
        }
        fmt.Println(string(buf[:n]))
    }
     
     
    //一行一行的读取
    func ReadLine(path string) {
        f, err := os.Open(path)
        if err != nil {
             fmt.Println(err)
        }
     
        defer f.Close()
        r := bufio.NewReader(f)
     
        for {
             buf, e := r.ReadBytes(' ')
             if e != nil {
                     if e == io.EOF {
                             break
                     }
                     fmt.Println(e)
             }
             fmt.Printf("%s", buf)
         }
    }
    func main() {
        path := "./demo.txt"
        WriteFile(path)
        // ReadFile(path)
        // ReadLine(path)
    }
  • 相关阅读:
    NOIP 2012 文化之旅
    史上最全的各种C++ STL容器全解析
    详解C++ STL map 容器
    详解C++ STL priority_queue 容器
    浅谈C++ STL stack 容器
    浅谈C++ STL queue 容器
    浅谈C++ STL vector 容器
    CF1185F Two Pizzas
    浅谈C++ STL deque 容器
    详解C++ STL multiset 容器
  • 原文地址:https://www.cnblogs.com/itsuibi/p/14471023.html
Copyright © 2011-2022 走看看