# 文件读写

URL: https://caijiao.org/go/05-utils/01-file-io
Source: docs/go/05-utils/01-file-io.md
Description: 本节介绍 Go 语言中文件的基本读写操作，帮助处理文件输入输出。

## 1. 打开文件

使用 `os` 包的 `Open` 和 `Create` 函数：

```go
file, err := os.Open("file.txt")      // 只读打开
file, err := os.Create("file.txt")    // 创建文件（覆盖）
defer file.Close()
````

## 2. 读取文件

使用 `Read` 或 `io/ioutil` 包：

```go
data := make([]byte, 100)
n, err := file.Read(data)
fmt.Println(string(data[:n]))
```

或：

```go
data, err := ioutil.ReadFile("file.txt")
fmt.Println(string(data))
```

## 3. 写入文件

使用 `Write` 或 `WriteString`：

```go
n, err := file.Write([]byte("Hello Go"))
```

## 4. 追加写入

使用 `os.OpenFile` 以追加模式打开文件：

```go
file, err := os.OpenFile("file.txt", os.O_APPEND|os.O_WRONLY, 0644)
file.WriteString("Append text")
```

---

文件读写是处理持久数据的基础操作。
