Files and Directories
Read Text
Go can read a small text file into memory with os.ReadFile.
Read Text
read_text.go
package main
import (
"fmt"
"os"
"strings"
)
func main() {
var line =
fileName := "go09_read_text.txt"
content := line + "\n"
err := os.WriteFile(fileName, []byte(content), 0644)
if err != nil {
fmt.Println("writeError=", err != nil)
return
}
defer os.Remove(fileName)
data, err := os.ReadFile(fileName)
if err != nil {
fmt.Println("readError=", err != nil)
return
}
text := strings.TrimSpace(string(data))
fmt.Println("file=", fileName)
fmt.Println("text=", text)
fmt.Println("length=", len(text))
}
package main
import (
"fmt"
"os"
"strings"
)
func main() {
var line =
fileName := "go09_read_text.txt"
content := line + "\n"
err := os.WriteFile(fileName, []byte(content), 0644)
if err != nil {
fmt.Println("writeError=", err != nil)
return
}
defer os.Remove(fileName)
data, err := os.ReadFile(fileName)
if err != nil {
fmt.Println("readError=", err != nil)
return
}
text := strings.TrimSpace(string(data))
fmt.Println("file=", fileName)
fmt.Println("text=", text)
fmt.Println("length=", len(text))
}
package main
import (
"fmt"
"os"
"strings"
)
func main() {
var line =
fileName := "go09_read_text.txt"
content := line + "\n"
err := os.WriteFile(fileName, []byte(content), 0644)
if err != nil {
fmt.Println("writeError=", err != nil)
return
}
defer os.Remove(fileName)
data, err := os.ReadFile(fileName)
if err != nil {
fmt.Println("readError=", err != nil)
return
}
text := strings.TrimSpace(string(data))
fmt.Println("file=", fileName)
fmt.Println("text=", text)
fmt.Println("length=", len(text))
}
read file
`os.ReadFile` returns the file contents as bytes, which can be converted to a string.