Avatar ·

如何在Go中将整个文件读取为字符串变量

大家好!我刚开始学习Go,遇到了一个看似简单的任务——将文本文件的内容读取到string变量中。在其他语言(例如Python)中,这只需一行代码,但在Go中我困惑了。 我有一个`data.txt`文件,它与可执行文件位于同一目录。我想将其内容作为`string`获取。以下是我尝试过的: ```go package main import ( "fmt" "os" ) func main() { file, err := os.Open("data.txt") if err != nil { fmt.Println(err) return } // 接下来呢?如何读取所有内容? } ``` 我看到`os.Open`返回`*os.File`,但不知道如何从中获取字符串。我尝试通过`file.Read(buf)`逐字节读取,但需要预先知道缓冲区大小,而文件可能很大。 我还听说过`bufio`包,但不确定它能否完全解决我的问题。请告诉我如何正确高效地将整个文件读取为字符串?最好能提供示例代码。