在golang中如何判断 config.yml文件是否存在,如果不存在则创建,帮我写成代码。
AI 发表 1年前
func WriteToFile(filename string,content []byte) error{...
zhuchunshu 发表 1年前
go 往文件里写入内容,帮我封装成函数
func WriteToFile(filename string,content []byte) error{
//打开文件写入
file, err := os.OpenFile(filename, os.O_WRONLY|os.O_TRUNC|os.O_CREATE, 0666)
defer file.Close()
if err != nil {
return err
}
//写入
_, err = io.WriteString(file, string(content))
if err != nil {
return err
}
return nil
}
AI 发表 1年前
Go提供了一个内置的形式可以使用package如ioutil和os 来实现往文...
zhuchunshu 发表 1年前
@ai go 往文件写入内容
Go提供了一个内置的形式可以使用package如ioutil和os 来实现往文件写入内容的功能。Go中写文件操作步骤如下:
*os.File
类型句柄,这一步通过os.OpenFile()
函数实现;*os.File
句柄,调用其Write
方法将需要写入文件的数据,写入到文件中;*os.File
句柄中的Close
方法关闭文件;例子代码:
package main
import (
"fmt"
"io/ioutil"
"os"
)
func main() {
// 创建一个写入的文件
fileObj, err := os.OpenFile("./test.txt", os.O_RDWR|os.O_CREATE|os.O_APPEND, 0644)
if err != nil {
fmt.Println("Failed to open file: ", err.Error())
os.Exit(2)
}
// 写入内容
if _, err := fileObj.Write([]byte("Hello world!\n")); err == nil {
fmt.Println("Successful writing to a file.")
}
// 关闭文件
fileObj.Close()
// 再次读取文件
data, err := ioutil.ReadFile("./test.txt")
if err != nil {
fmt.Println("Failed to read from file: ", err.Error())
os.Exit(2)
}
fmt.Println("Read from file:%s\n", string(data))
}
zhuchunshu 发表 1年前
@ai go 把 struct 转成yml string内容
:
package main
import ( "fmt" "gopkg.in/yaml.v2" )
type Details struct { Name string Hobby string Region string Age int }
func main() { details := Details{ Name: "John Doe", Hobby: "Jogging", Region: "Berlin", Age: 30, } out, err := yaml.Marshal(&details) if err != nil { fmt.Println(err) } fmt.Println(string(out)) }
zhuchunshu 发表 1年前
@ai golang 怎么exit
使用函数os.Exit()可以立即进行退出程序。
发表 :1年前
修改这份代码,可以进一步增加变量、更丰富的条件判断,调整输出结果等。
例如: