温馨提示×

Go语言在Linux上的文件系统操作

小樊
37
2025-11-28 15:29:19
栏目: 编程语言

在Go语言中,你可以使用标准库中的osio/ioutil包来进行文件系统操作。以下是一些常用的文件系统操作示例:

  1. 创建文件:
package main

import (
	"fmt"
	"os"
)

func main() {
	file, err := os.Create("test.txt")
	if err != nil {
		fmt.Println("Error creating file:", err)
		return
	}
	defer file.Close()

	_, err = file.WriteString("Hello, World!")
	if err != nil {
		fmt.Println("Error writing to file:", err)
		return
	}
}
  1. 打开文件:
package main

import (
	"fmt"
	"os"
)

func main() {
	file, err := os.Open("test.txt")
	if err != nil {
		fmt.Println("Error opening file:", err)
		return
	}
	defer file.Close()

	buf := make([]byte, 1024)
	n, err := file.Read(buf)
	if err != nil {
		fmt.Println("Error reading file:", err)
		return
	}

	fmt.Println("File content:", string(buf[:n]))
}
  1. 删除文件:
package main

import (
	"fmt"
	"os"
)

func main() {
	err := os.Remove("test.txt")
	if err != nil {
		fmt.Println("Error deleting file:", err)
		return
	}
}
  1. 创建目录:
package main

import (
	"fmt"
	"os"
)

func main() {
	err := os.Mkdir("test_dir", 0755)
	if err != nil {
		fmt.Println("Error creating directory:", err)
		return
	}
}
  1. 删除目录:
package main

import (
	"fmt"
	"os"
)

func main() {
	err := os.Remove("test_dir")
	if err != nil {
		fmt.Println("Error deleting directory:", err)
		return
	}
}
  1. 遍历目录:
package main

import (
	"fmt"
	"io/ioutil"
	"os"
)

func main() {
	files, err := ioutil.ReadDir(".")
	if err != nil {
		fmt.Println("Error reading directory:", err)
		return
	}

	for _, file := range files {
		fmt.Println(file.Name())
	}
}

这些示例展示了如何在Linux上使用Go语言进行基本的文件系统操作。你可以根据自己的需求修改这些示例。

0