Golang:文件读写操作WriteFile、ReadFile和0644权限

这篇具有很好参考价值的文章主要介绍了Golang:文件读写操作WriteFile、ReadFile和0644权限。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

方法签名


// 文件打开、写入、关闭
func OpenFile(name string, flag int, perm FileMode) (*File, error)

func (f *File) WriteString(s string) (n int, err error)
func (f *File) Write(b []byte) (n int, err error)

func (f *File) Close() error

// 写入文件
func WriteFile(name string, data []byte, perm FileMode) error

// 读取文件
func ReadFile(name string) ([]byte, error)

// 删除文件
func Remove(name string) error

示例代码

package main

import (
    "fmt"
    "os"
)

func main() {

    // 写入数据
    os.WriteFile("demo.txt", []byte("Hello"), 0644)

    // 追加写入
    f, _ := os.OpenFile("demo.txt", os.O_APPEND|os.O_CREATE|os.O_WRONLY, 0644)
    f.WriteString("Wrold")
    f.Close()

    // 读取文件
    content, _ := os.ReadFile("demo.txt")
    fmt.Println(string(content))
    // HelloWrold

    // 删除文件
    os.Remove("demo.txt")
}

关于0644权限,可以参考下图
Golang:文件读写操作WriteFile、ReadFile和0644权限,Golang,golang,开发语言,后端

  • 第0位:文件属性。“-” 表示普通文件;“d” 表示是一个目录
  • 第1~3位:文件所有者的权限
  • 第4~6位:文件所属用户组的权限
  • 第7~9位:其他人的权限
r: 4
w: 2
x: 1

owner = rwx = 4+2+1 = 7
group = rwx = 4+2+1 = 7
others= rwx = 4+2+1 = 7

参考文章来源地址https://www.toymoban.com/news/detail-860616.html

  • Go写文件的权限 WriteFile(filename, data, 0644)?
  • Golang 基础之文件操作

到了这里,关于Golang:文件读写操作WriteFile、ReadFile和0644权限的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Golang中文件目录操作的实现

    目录 文件 文件目录 文件目录操作 读取文件 一、方法一 (file.Read()) 二、方法二 (bufio读取文件) 三、方法三 (ioutil 读取方法) 写入文件 一、方法一 二、方法二 三、方法三 (ioutil写入文件) 复制文件 一、方法一 二、方法二        Golang中,文件是指计算机中存储数据的实体,

    2024年02月07日
    浏览(36)
  • Golang操作阿里云OSS上传文件

    为什么要使用OSS?应用场景是什么? 最近在开发考试系统,里面需要上传课件,课件包括pdf,map等等各种类型的文件,这些文件不能像图片一样,直接上传到项目目录下面,需要单独存放,阿里云就提供了存储方式,然后OSS是其中的一种,可以用来存储一些文件。 我们需要

    2024年02月02日
    浏览(35)
  • Golang中互斥锁和读写互斥锁

    目录 互斥锁 使用互斥锁的示例代码 读写互斥锁 读写互斥锁的示例代码         在Golang中,互斥锁(Mutex)是一种基本的同步原语,用于实现对共享资源的互斥访问。互斥锁通过在代码中标记临界区来控制对共享资源的访问,从而保证同一时间只有一个 goroutine 可以访问共

    2024年02月06日
    浏览(25)
  • 从源码深入理解读写锁(golang-RWMutex)

    环境:go 1.19.8 在读多写少的情况下,即使一段时间内没有写操作,大量并发的读访问也不得不在Mutex的保护下变成串行访问,这种情况下,使用Mutex,对性能影响比较大。 所以就要区分读写操作。如果某个读操作的g持有了锁,其他读操作的g就不必等待了,可以并发的访问共

    2024年02月02日
    浏览(28)
  • 【Golang】golang使用三方SDK操作容器指南

    大家好 我是寸铁👊 总结了一篇 golang使用三方SDK操作容器✨ 喜欢的小伙伴可以点点关注 💝 这应该是目前全网最全golang使用三方SDK操作容器的指南了✌️ 主要是创建容器的配置信息,常用的字段 使用包如下: 配置创建Docker 容器的结构体,具体字段的含义和用途如下: 1.

    2024年04月11日
    浏览(29)
  • 基于golang操作Docker

    官方库 github.com/docker/docker github.com/docker/docker/api/types github.com/docker/docker/client github.com/docker/docker/api/types/container github.com/docker/docker/pkg/stdcopy 官方文档 https://docs.docker.com/engine/api/sdk 实例: https://docs.docker.com/engine/api/sdk/examples/ 在[Service]部分,修改ExecStart参数,在最后增加-H tcp:

    2024年02月02日
    浏览(29)
  • golang 字符串操作、处理

    1. len()内置系统函数,计算字符串结果是字符串的字节长度,不是字符长度 2. 计算带中文的字符串长度。 需要将字符串转为 rune类型(int32) 3.为什么字符串带中文,字符长度计算方式不一样? 因为golang默认的字符编码是utf-8,  字符串的底层是 []byte类型,英文及标点符号都是

    2024年02月14日
    浏览(37)
  • [golang gin框架] 45.Gin商城项目-微服务实战之后台Rbac微服务之角色权限关联

    角色和权限的关联关系在前面文章中有讲解,见[golang gin框架] 14.Gin 商城项目-RBAC管理之角色和权限关联,角色授权,在这里通过微服务来实现 角色对权限的授权 操作,这里要实现的有两个功能,一个是进入授权,另一个是,授权提交操作,页面如下:  这里需要在proto/rbacRole.proto中增加

    2024年02月14日
    浏览(41)
  • 深入了解Golang atomic原子操作

       在编程中经常遇到并发而产生的问题,那么应该怎么解决并发呢?什么情况下会产生并发以及为什么会有并发问题的产生?下面我将从宏观的角度讲解并发安全性问题。    并发是指在同一时间间隔内,多个任务(线程、进程或活动)同时存在和执行的状态,在同一个

    2024年02月21日
    浏览(36)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包