验证码: 看不清楚,换一张 查询 注册会员,免验证
  • {{ basic.site_slogan }}
  • 打开微信扫一扫,
    您还可以在这里找到我们哟

    关注我们

golang中如何操作文件

阅读:997 来源:乙速云 作者:代码code

golang中如何操作文件

在Go语言中,读取和修改文件是非常常见的需求。在本文中,我们将介绍如何操作文件,包括打开文件、删除文件内容、获取文件信息和将文件恢复到原始状态等。

一、打开文件

使用os.OpenFile()函数来打开文件,该函数可以接受许多参数。在本例中,我们只需传入文件名和标志即可。

文件标志根据需要进行更改。例如,如果您要追加内容到文件末尾,则需要将标志设置为os.O_APPEND | os.O_WRONLY。

示例代码:

f, err := os.OpenFile("example.txt", os.O_RDWR, 0644)
if err != nil {
    log.Fatal(err)
}
defer f.Close()

二、删除文件内容

使用os.Truncate()函数来删除文件内容。该函数接受一个偏移量参数和一个长度参数。偏移量表示要截断文件的起始位置,而长度表示要截断的字节数。

示例代码:

err := os.Truncate("example.txt", 0)
if err != nil {
    log.Fatal(err)
}

三、获取文件信息

使用os.Stat()函数可以获取文件的元数据。获取到的元数据包括文件大小、修改时间和文件模式等。

示例代码:

fi, err := os.Stat("example.txt")
if err != nil {
    log.Fatal(err)
}
fmt.Println(fi.Size())
fmt.Println(fi.Mode())
fmt.Println(fi.ModTime())

四、将文件恢复到原始状态

如果您希望将文件恢复到原始状态,您需要在写入新内容之前加载旧内容,然后将旧内容写回文件。

示例代码:

// 读取原始内容
b, err := ioutil.ReadFile("example.txt")
if err != nil {
    log.Fatal(err)
}

// 写入新内容
_, err = fmt.Fprint(f, "new content")
if err != nil {
    log.Fatal(err)
}

// 将原始内容写回去
_, err = f.Seek(0, 0)
if err != nil {
    log.Fatal(err)
}
_, err = f.Write(b)
if err != nil {
    log.Fatal(err)
}

分享到:
*特别声明:以上内容来自于网络收集,著作权属原作者所有,如有侵权,请联系我们: hlamps#outlook.com (#换成@)。
相关文章
{{ v.title }}
{{ v.description||(cleanHtml(v.content)).substr(0,100)+'···' }}
你可能感兴趣
推荐阅读 更多>