Home >Backend Development >Golang >How to modify files in go language
How to modify files in Go language: first import the corresponding package; then open and read the file through the "f, err := os.Open("index.html")..." statement; finally pass The "bufio.NewWriter(fw)..." statement can rewrite the file.
The operating environment of this article: Windows7 system, Go1.11.2, Dell G3 computer.
Recommendation: "golang tutorial"
Go language implementation to change file content
Idea
Read the file, append or replace the content that needs to be changed, and then write it to the file.
Implement changing the content in the file
Now there is an html file containing the following content
<meta name="testkey" content="hello world" />
Change hello world to the required characters
Import package
import ( "bufio" "fmt" "io" "log" "net/http" "os" "strings" )
Read and write files
Read files
f, err := os.Open("index.html") if err != nil { return err } buf := bufio.NewReader(f) var rep = []string{"<meta name=\"testkey\" content=\"", arg1, "\" /> "} var result = "" for { a, _, c := buf.ReadLine() if c == io.EOF { break } if strings.Contains(string(a), "baidu-site-verification") { result += strings.Join(rep, "") + "\n" } else { result += string(a) + "\n" } }
Write files (overwrite)
fw, err:= os.OpenFile ("index.html", os.O_WRONLY|os.O_CREATE|os.O_TRUNC, 0666)//os.O_TRUNC clear the file and rewrite it, otherwise the original file content may remain
w := bufio.NewWriter(fw) w.WriteString(result) if err != nil { panic(err) } w.Flush()
Implement a simple http Interface
func replace(w http.ResponseWriter, r *http.Request) { r.ParseForm() var arg1 string = r.FormValue("p1")//参数key ReadLine("index.html", arg1) fmt.Fprintf(w, "success") //返回结果 } func main() { http.HandleFunc("/replace", replace) //设置访问的路由 err := http.ListenAndServe(":9090", nil) //设置监听的端口 if err != nil { log.Fatal("ListenAndServe: ", err) } }
Compile
Compile native run
go build
Cross compile linux run
CGO_ENABLED=0 GOOS=linux GOARCH=amd64 go build
The above is the detailed content of How to modify files in go language. For more information, please follow other related articles on the PHP Chinese website!