文件操作
1. 文件读取
func ReadFile(dirname string) ([]byte, error)func abs_path(path string) string {
data, err := ioutil.ReadFile(path)
if err != nil {
fmt.Println("file reading error", err)
return ""
}
return string(data)
}func String(name string, value string, usage string) *string String defines a string flag with specified name, default value, and usage string. The return value is the address of a string variable that stores the value of the flag.filehadling -fpath=../bike.go -chunk ../bike.go -line ../bike.go/*read file into small chunks*/ func small_chunks(fptr *string) { f, err := os.Open(*fptr) if err != nil { log.Fatal(err) } defer func() { if err = f.Close(); err != nil { log.Fatal(err) } }() r := bufio.NewReader(f) b := make([]byte, 3) for { _, err := r.Read(b) if err != nil { fmt.Println("Error reading file", err) break } fmt.Println(string(b)) } }func read_lines(fptr *string) { f, err := os.Open(*fptr) if err != nil { log.Fatal(err) } defer func() { if err = f.Close(); err != nil { log.Fatal(err) } }() s := bufio.NewScanner(f) for s.Scan() { fmt.Println(s.Text()) } if err = s.Err(); err != nil { log.Fatal(err) } }
2. 文件写入
Last updated