乐趣区

关于go:Go-快速入门指南-写文件

概述

调用 os 包即可。倡议先浏览 创立文件。

例子

间接写入

package main

import "os"

func main() {
    code := `
package main

func main() {println("hello world")
}
`

    err := os.WriteFile("/tmp/test_main.go", []byte(code), 0755)
    if err != nil {panic(err)
    }
}

// $ go run main.go
// cat /tmp/test_main.go
// 输入如下 
/**
  package main

  func main() {println("hello world")
  }
*/

先获取文件句柄,而后写入

package main

import (
    "fmt"
    "os"
)

func main() {file, err := os.OpenFile("/tmp/test_main.go", os.O_RDWR, 0755)
    if err != nil {panic(err)
    }

    // 记得敞开文件句柄
    defer func() {err = file.Close()
        if err != nil {panic(err)
        }
    }()

    code := `
package main

func main() {println("hello world")
}
`
    n, err := file.WriteString(code)
    if err != nil {panic(err)
    }

    err = file.Sync() // 同步到硬盘
    if err != nil {panic(err)
    }

    fmt.Printf("%d characters were successfully written\n", n)
}

// $ go run main.go
// 输入如下 
/**
  55 characters were successfully written
*/

分割我

退出移动版