文件操作和数据处理是应用程序的常见需求。Go 语言提供了丰富的标准库来处理文件读写、JSON、XML 等数据格式。本部分将详细讲解这些内容。
文件操作是应用程序的基本功能。本章讲解:
IO 操作是数据处理的核心。本章涵盖:
JSON 和 XML 是常用的数据交换格式。本章介绍:
文件读写:
// 读取文件
data, err := os.ReadFile("file.txt")
// 写入文件
err := os.WriteFile("file.txt", data, 0644)
// 打开文件
file, err := os.Open("file.txt")
defer file.Close()
// 创建文件
file, err := os.Create("newfile.txt")
defer file.Close()
IO 操作:
// 使用 Reader 和 Writer
reader := strings.NewReader("Hello")
writer := &bytes.Buffer{}
// 复制数据
io.Copy(writer, reader)
// 缓冲读写
bufReader := bufio.NewReader(file)
bufWriter := bufio.NewWriter(file)
JSON 处理:
type User struct {
Name string `json:"name"`
Age int `json:"age"`
}
// 编码
data, _ := json.Marshal(user)
data, _ := json.MarshalIndent(user, "", " ")
// 解码
var user User
json.Unmarshal(data, &user)
// 流式处理
encoder := json.NewEncoder(file)
decoder := json.NewDecoder(file)
XML 处理:
type Person struct {
XMLName xml.Name `xml:"person"`
Name string `xml:"name"`
Age int `xml:"age"`
}
// 编码
data, _ := xml.Marshal(person)
// 解码
var person Person
xml.Unmarshal(data, &person)