当前位置: 首页 > news >正文

前端做网站是什么流程wordpress和discuz哪个好

前端做网站是什么流程,wordpress和discuz哪个好,怎么建立一个群,开发网站网络公司有哪些实际项目中#xff0c;要读取一些json等配置文件。今天就来说一说#xff0c;Golang 是如何读取YAML,JSON,INI等配置文件的。 一. go读取json配置文件 JSON 应该比较熟悉#xff0c;它是一种轻量级的数据交换格式。层次结构简洁清晰 #xff0c;易于阅读和编写#xff0…实际项目中要读取一些json等配置文件。今天就来说一说Golang 是如何读取YAML,JSON,INI等配置文件的。 一. go读取json配置文件 JSON 应该比较熟悉它是一种轻量级的数据交换格式。层次结构简洁清晰 易于阅读和编写同时也易于机器解析和生成。 1.创建 conf.json {enabled: true,path: /usr/local } 2.新建config_json.go package mainimport (encoding/jsonfmtos )type configuration struct {Enabled boolPath string }func main() {// 打开文件file, _ : os.Open(conf.json)// 关闭文件defer file.Close()//NewDecoder创建一个从file读取并解码json对象的*Decoder解码器有自己的缓冲并可能超前读取部分json数据。decoder : json.NewDecoder(file)conf : configuration{}//Decode从输入流读取下一个json编码值并保存在v指向的值里err : decoder.Decode(conf)if err ! nil {fmt.Println(Error:, err)}fmt.Println(path: conf.Path) } 启动运行后输出如下 D:\Go_Path\go\src\configmgrgo run config_json.go path:/usr/local 1.2 复杂json解析 假设test.json内容如下如何解析 {pids:{default:{pid:1844_71935560,desc:app1},shehui:{pid:1844_101751664,desc:app2}}, top_words:[邓紫棋, 沈腾,关晓彤,鹿晗] } 通过json转struct工具转换 Golang: Convert JSON to Struct JSON-to-Go: Convert JSON to Go instantly 转化后的struct type configuration struct {Pids struct {Default struct {Pid string json:pidDesc string json:desc} json:defaultShehui struct {Pid string json:pidDesc string json:desc} json:shehui} json:pidsTopWords []string json:top_words } demo实现 package mainimport (encoding/jsonfmtos )type configuration struct {Pids struct {Default struct {Pid string json:pidDesc string json:desc} json:defaultShehui struct {Pid string json:pidDesc string json:desc} json:shehui} json:pidsTopWords []string json:top_words }func parseJsonConfig(filepath string) (conf configuration) {// 打开文件file, _ : os.Open(filepath)// 关闭文件defer file.Close()conf configuration{}//NewDecoder创建一个从file读取并解码json对象的*Decoder解码器有自己的缓冲并可能超前读取部分json数据。//Decode从输入流读取下一个json编码值并保存在v指向的值里err : json.NewDecoder(file).Decode(conf)if err ! nil {fmt.Println(Error:, err)}return }func main() {pdd : parseJsonConfig(D:\\LearnGo\\FirstGo\\10-文件操作\\test3.json)fmt.Println(pdd)fmt.Println(pdd.Pids.Shehui.Pid)} 再继续来个案例 假设json文件内容如下想读取top_words中name的值要怎么解析获取 {pids:{default:{pid:1844_71935560,desc:app1},shehui:{pid:1844_101751664,desc:app2}},top_words:[{name: cc,age: 18},{name: test,age: 20}] } demo实现 package mainimport (encoding/jsonfmtos )type configuration1 struct {Pids struct {Default struct {Desc string json:descPid string json:pid} json:defaultShehui struct {Desc string json:descPid string json:pid} json:shehui} json:pidsTopWords []struct {Age int64 json:ageName string json:name} json:top_words }func parseJsonConfig1(filepath string) (conf configuration1) {// 打开文件file, _ : os.Open(filepath)// 关闭文件defer file.Close()conf configuration1{}//NewDecoder创建一个从file读取并解码json对象的*Decoder解码器有自己的缓冲并可能超前读取部分json数据。//Decode从输入流读取下一个json编码值并保存在v指向的值里err : json.NewDecoder(file).Decode(conf)if err ! nil {fmt.Println(Error:, err)}return }func main() {pdd : parseJsonConfig1(D:\\LearnGo\\FirstGo\\10-文件操作\\test4.json)fmt.Println(pdd)//遍历string切片获取name的值for _, i : range pdd.TopWords { name : i.Namefmt.Println(name)}} 运行结果 {{{app1 1844_71935560} {app2 1844_101751664}} [{18 cc} {20 test}]} cc test 最后一个工作用到的案例读取json文件中的规则做正则匹配这里没有进行匹配操作后续用到加上 {reverse_shell_rule:[{id:R10000,regex:socat\\sTCP4:\\w\\.\\w\\.\\w\\.\\w:(\\w)\\s.*},{id:R10001,regex:exec\\s\\d\\\\\/\\w\/.*}] } // 读取JSON文件 将内容转为结构对象 然后更改数据package mainimport (encoding/jsonfmtio/ioutil )type ReverseJson struct {ReverseShellRule []struct {ID string json:idRegex string json:regex} json:reverse_shell_rule }func main() {var data ReverseJson// 读取JSON文件内容 返回字节切片bytes, _ : ioutil.ReadFile(D:\\LearnGo\\FirstGo\\10-文件操作\\test.json)// 打印时需要转为字符串fmt.Println(string(bytes))// 将字节切片映射到指定结构上json.Unmarshal(bytes, data)//fmt.Println(*** unmarshal result: ***)// 打印对象结构for _, reg : range data.ReverseShellRule {rule : reg.Regexfmt.Println(rule)}} 二、 go读取.ini配置文件 INI文件格式是某些平台或软件上的配置文件的非正式标准由节(section)和键(key)构成比较常用于微软Windows操作系统中。这种配置文件的文件扩展名为INI。 1.创建 conf.ini [Section] enabled true path /usr/local # another comment 2.下载第三方库go get gopkg.in/gcfg.v13.新建 config_ini.go package mainimport (fmtgcfg gopkg.in/gcfg.v1 )func main() {config : struct {Section struct {Enabled boolPath string}}{}err : gcfg.ReadFileInto(config, conf.ini)if err ! nil {fmt.Println(Failed to parse config file: %s, err)}fmt.Println(config.Section.Enabled)fmt.Println(config.Section.Path) } 启动运行后输出如下 D:\Go_Path\go\src\configmgrgo run config_ini.go true /usr/local 三、go读取yaml配置文件 yaml 可能比较陌生一点但是最近却越来越流行尤其在SpringBoot中的application.yml或者application.yaml中使用非常广泛。也就是一种标记语言。层次结构也特别简洁清晰 易于阅读和编写同时也易于机器解析和生成。 golang的标准库中暂时没有给我们提供操作yaml的标准库但是github上有很多优秀的第三方库开源给我们使用。 创建 conf.yaml enabled: true path: /usr/local 2.下载第三方库go get gopkg.in/yaml.v23.创建 config_yaml.go package mainimport (fmtio/ioutilloggopkg.in/yaml.v2 )type conf struct {Enabled bool yaml:enabled //yamlyaml格式 enabled属性的为enabledPath string yaml:path }func (c *conf) getConf() *conf {yamlFile, err : ioutil.ReadFile(conf.yaml)if err ! nil {log.Printf(yamlFile.Get err #%v , err)}err yaml.Unmarshal(yamlFile, c)if err ! nil {log.Fatalf(Unmarshal: %v, err)}return c }func main() {var c confc.getConf()fmt.Println(path: c.Path) } 启动运行后输出如下 D:\Go_Path\go\src\configmgrgo run config_yaml.go path:/usr/local 最后 以上就把golang 读取配置文件的方法都介绍完了。大家可以拿着代码运行起来看看。 参考资料 Go 语言解析 JSON 文件 - 知乎 Go 语言解析 JSON 文件推荐 如何读取yaml,json,ini等配置文件【Golang 入门系列九】-腾讯云开发者社区-腾讯云
http://www.zqtcl.cn/news/619763/

相关文章:

  • 网站优化和网站推广深圳市高端网站建设
  • 宁波网站建设优化企业推荐四川省建设厅新网站
  • 哈尔滨模板自助建站优秀的电子商务网站
  • 有站点网络营销平台wordpress 退出 跳转
  • 网站建设的内容规划国内做网站群平台的公司
  • 浙江省院士专家工作站建设网站网站的请求服务做优先级
  • 建一个国外网站多少钱邵阳建设银行网站是多少
  • h5页面有哪些seo关键词智能排名
  • 电信的网做的网站移动网打不开该找电信还是移动杨和勒流网站建设
  • 网站建设添加背景命令做货代哪个网站上好找客户
  • 专做宝宝的用品网站武昌网站建设价格多少钱
  • 福田网站设计处理智慧团建app官网下载
  • 福州网站建设效果开发公司经营管理存在的问题
  • 如何自己做企业网站织梦做的网站织梦修改网页
  • 医院网站开发兼职怎么做可以支付的网站
  • 网站开发大概需要多久湛江招聘网最新招聘
  • 免费建网站 手机网站深圳网站设计(深圳信科)
  • 辽宁做网站的公司工作室网站建设的意义
  • 南京网站搜索排名免费企业网站空间
  • 手机要访问国外网站如何做附近学电脑在哪里报名
  • 免费建网站哪个网好中国建设银行信用卡黑名单网站
  • 网页设计好看的网站中小型网站建设 教案
  • 优秀网站设计案例行业内做网站的公司排名
  • 个人备案网站能做商城吗长沙app制作公司哪家好
  • 成都网站建设方案优化旺道seo怎么优化网站
  • 九江县建设规划局网站wordpress多个博客
  • 绵阳住房和城乡建设局网站做服装外贸的网站
  • 福建省华荣建设集团有限公司网站建设网站西安
  • 做视频网站程序多少钱网站内链有什么用
  • 建设企业网站模板联享品牌网站建设