zoukankan      html  css  js  c++  java
  • Golang 读写文件的操作

    • golang 创建文本文件

      f, err := os.Create(filenme)
      defer f.Close()
      if err != nil {
      	fmr.Println(err.Error())
      }else{
      	_, err = f.Write([]byte("要写入的文本内容"))
      	checkErr(err)
      }
      
    • golang 读取文本文件

      • f, err := os.Openfile(filename, os.O_RDONLY, 0600)
        	defer f.Close()
        	if err != nil {
        		fmt.Println(err.Error())
        	}else{
        		contentByte, err = ioutil.ReadAll(f)
        		checkErr(err)
        		fmt.Println(string(contentByte))
        	}
        
      • Openfile用法:

        • os.OpenFile(文件名, 打开方式,打开模式)
      • // 打开方式
        const(
        	// 只读模式
        	O_RDONLY int = syscall.O_RDONLY // open the file read-only
        	// 只写模式
        	O_WRONLY int - syscall.O_WRONLY // open the file write-only
        	// 可写可读
        	O_RDWR int = syscall.0_RDWR // open the file read-write
        	// 追加内容
        	O_APPEND int = syscall.O_APPEND 
        	//创建文件,如果文件不存在
        	O_CREATE int = syscall.O_CREAT // create a new file if none exists
        	// 与创建文件一同使用。文件必须存在
        	O_EXCL int = syscall.O_EXCL 
        	// 打开一个同步的文件流
        	O_SYNC int = syscall.O_SYNC // open for synchronous i/o
        	// 如果可能
        	O_TRUNC int = syscall.O_TRUNC 
        )
        
      • // 打开模式
        const (
        ModeDir FileMode = 1 << (32 - 1 - iota) 
        ModeAppend // a: append-only 追加模式
        ModeExclusive //  
        ModeTemporary // T: temporary file (not backed up) 临时文件
        ModeSymlink // L: symbolic link 象征性的关联
        ModeDevice // D: device file 设备文件
        ModeNamedPipe // p: named pipe (FIFO) 命名管道
        ModeSocket // S: Unix domain socket Unix 主机 socket
        ModeSetuid // u: setuid 设置uid
        ModeSetgid // g: setgid 设置gid
        ModeCharDevice // c: Unix character device, when ModeDevice is set Unix 字符设备,当设备模式是设置Unix
        ModeSticky // t: sticky 粘性的
        // Mask for the type bits. For regular files, none will be set. bit位遮盖.不变的文件设置为none
        ModeType = ModeDir | ModeSymlink | ModeNamedPipe | ModeSocket | ModeDevice
        ModePerm FileMode = 0777 // Unix permission bits 权限位.
        )
        
      • golang 写入文件文本

      • f, err := os.OpenFile(filename, os.O_WINLY|OS.O_TRUNC, 0600)
        	defer f.Close()
        	if err != nil {
        		fme.Println(err.Error())
        	}else{
        		_, err = f.Write([]Byte("要写入的文本文件"))
        		checkErr(err)
        	}
        
  • 相关阅读:
    C#开源框架
    8 种 NoSQL 数据库系统对比
    安装补丁“此更新不适用于你的计算机”解决办法
    .net开源资料
    winform程序退出
    jquery.chained与jquery.chained.remote使用以及区别
    存储过程使用回滚
    C# Panel中绘图如何出现滚动条
    C#结构体的特点浅析
    如何用堆栈和循环结构代替递归调用--递归转换为非递归的10条军规
  • 原文地址:https://www.cnblogs.com/jcjc/p/12555565.html
Copyright © 2011-2022 走看看