好几天没有更新了因为我正在研究一个新的项目,然后很费时,希望到时候得到大家的认可和帮助,这里申明一下希望大家帮助一下,如果您有好的程序或者代码判断,想分享给大家,您可以向我投稿,分享代码就是为了帮助大家,代码一定要是可行的,到时候我会先测试然后再发布!发送代码片段可以直接到我的邮箱admin#widuu.com(#换成@),也可以加我的QQ:23169450,下边是一个golang读取ini文件的简单事例!
效果图
package main import ( "bufio" "fmt" "io" "os" "strings" ) //申明一个map到时候存取配置文件 var per map[string]interface{} func main() { //实例化这个map per = make(map[string]interface{}) //打开这个ini文件 f, _ := os.Open("test.ini") //读取文件到buffer里边 buf := bufio.NewReader(f) for { //按照换行读取每一行 l, err := buf.ReadString('\n') //相当于PHP的trim line := strings.TrimSpace(l) //判断退出循环 if err != nil { if err != io.EOF { //return err panic(err) } if len(line) == 0 { break } } switch { case len(line) == 0: //匹配[db]然后存储 case line[0] == '[' && line[len(line)-1] == ']': section := strings.TrimSpace(line[1 : len(line)-1]) fmt.Println(section) default: //dnusername = xiaowei 这种的可以匹配存储 i := strings.IndexAny(line, "=") per[strings.TrimSpace(line[0:i])] = strings.TrimSpace(line[i+1:]) } } //循环输出结果 for k, v := range per { fmt.Println(k, v) } }
发表评论 取消回复