How to update content of a text file?
In below example first character of a text file updated using WriteAt function which writes len(b) bytes to the File starting at byte offset off. It returns the number of bytes written and an error, if any.
"Po" has been updated by "Go" in below example.
Example
package main
import (
"io/ioutil"
"log"
"fmt"
"os"
)
func Beginning() {
// Read Write Mode
file, err := os.OpenFile("test.txt", os.O_RDWR, 0644)
if err != nil {
log.Fatalf("failed opening file: %s", err)
}
defer file.Close()
len, err := file.WriteAt([]byte{'G'}, 0) // Write at 0 beginning
if err != nil {
log.Fatalf("failed writing to file: %s", err)
}
fmt.Printf("\nLength: %d bytes", len)
fmt.Printf("\nFile Name: %s", file.Name())
}
func ReadFile() {
data, err := ioutil.ReadFile("test.txt")
if err != nil {
log.Panicf("failed reading data from file: %s", err)
}
fmt.Printf("\nFile Content: %s", data)
}
func main() {
fmt.Printf("\n######## Read file #########\n")
ReadFile()
fmt.Printf("\n\n######## WriteAt #########\n")
Beginning()
fmt.Printf("\n\n######## Read file #########\n")
ReadFile()
}
Output
######## Read file #########
File Content: Po Programming Language
######## WriteAt #########
Length: 1 bytes
File Name: test.txt
######## Read file #########
File Content: Go Programming Language
Most Helpful This Week
How to fetch an Integer variable as String in Go?
User Defined Function Types in Golang
Find capacity of Channel, Pointer and Slice
How to check if a map contains a key in Go?
Example: How to use ReadFull from IO Package in Golang?
Regex to extract image name from HTML in Golang
Dereferencing a pointer from another package
How to check if a string contains a numbers in Golang?
Replace first occurrence of string using Regexp
How to check string contains uppercase lowercase character in Golang?