文件读写

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了文件读写相关的知识,希望对你有一定的参考价值。

os.File封装所有文件相关操作,之前讲的os.Stdin,os.Stdout,os.Stderr都是os.File
a.打开一个文件进行读操作: os.Open(name string) (
File, error)
b.关闭一个文件:File.Close()
技术分享图片
技术分享图片
技术分享图片
文件写入:
os.OpenFile(“output.dat”, os.O_WRONLY|os.O_CREATE, 0666)
第二个参数:文件打开模式:

  1. os.O_WRONLY:只写
  2. os.O_CREATE:创建文件
  3. os.O_RDONLY:只读
  4. os.O_RDWR:读写
  5. os.O_TRUNC :清空
    第三个参数:权限控制:
    r ——> 004
    w——> 002
    x——> 001
    技术分享图片
    技术分享图片
    os.Args是一个string的切片,用来存储所有的命令行参数
    flag包的使用,用来解析命令行参数:
    flag.BoolVar(&test, "b", false, "print on newline")
    flag.StringVar(&str, "s", "", "print on newline")
    flag.IntVar(&count, "c", 1001, "print on newline")
    技术分享图片
    技术分享图片
    技术分享图片
    技术分享图片
    Json数据协议
  6. 导入包:Import “encoding/json”
  7. 序列化: json.Marshal(data interface{})
  8. 反序列化: json.UnMarshal(data []byte, v interface{})
package main

import (
    "bufio"
    "os"
    "fmt"
)

func main() {
    file, err := os.Open("C:/test.log")
    if err != nil {
        fmt.Println(err)
        return
    }
    //一定要记得关闭
    defer file.Close()
    reader := bufio.NewReader(file)
    str, _, err := reader.ReadLine()
    fmt.Println("输入的是:", string(str))
    ff, _, err := reader.ReadLine()
    if err != nil {
        fmt.Println(err)
        return
    }
    fmt.Println("输入的是:", string(ff))
}

以上是关于文件读写的主要内容,如果未能解决你的问题,请参考以下文章

Android tcp/ip 读写缓冲区脱离主代码

读写锁 与 互斥锁

Java-jxl插件Excel文件读写报错jxl.read.biff.BiffException: Unable to recognize OLE stream

Java-jxl插件Excel文件读写报错jxl.read.biff.BiffException: Unable to recognize OLE stream

VSCode自定义代码片段——.vue文件的模板

java中ReentrantReadWriteLock读写锁的使用