首页 > 其他分享 >golang 根据 json path 提取字段值

golang 根据 json path 提取字段值

时间:2023-11-24 15:57:50浏览次数:35  
标签:jsonStr 段值 gjson name city age golang json fmt

在Golang中,可以使用github.com/tidwall/gjson包来根据JSON路径提取字段值。

 
package main
 
import (
    "fmt"
    "github.com/tidwall/gjson"
)
 
func main() {
    jsonStr := `
    {
        "name": "John",
        "age": 30,
        "city": "New York"
    }
    `
 
    // 提取name字段的值
    name := gjson.Get(jsonStr, "name")
    fmt.Println(name.String())
 
    // 提取age字段的值
    age := gjson.Get(jsonStr, "age")
    fmt.Println(age.Int())
 
    // 提取city字段的值
    city := gjson.Get(jsonStr, "city")
    fmt.Println(city.String())
}

  

 

https://github.com/tidwall/gjson

https://blog.csdn.net/finghting321/article/details/105655960/

 

标签:jsonStr,段值,gjson,name,city,age,golang,json,fmt
From: https://www.cnblogs.com/ExMan/p/17853949.html

相关文章

  • 使用golang写一个导出excel的接口
    Craftedby[Genie](https://marketplace.visualstudio.com/items?itemName=genieai.chatgpt-vscode)You使用golang写一个导出excel的接口Genie要创建一个使用Go语言编写的导出Excel文件的接口,我们需要做几个步骤:安装依赖:我们将使用excelize库来创建和操作Excel文件。......
  • 未能加载文件或程序集“Newtonsoft.Json, Version=4.5.0.0, Culture=neutral, PublicK
    报错内容 解决办法:在Web.config的<configuration></configuration>中添加如下代码即可。<configuration><runtime><assemblyBindingxmlns="urn:schemas-microsoft-com:asm.v1"><dependentAssembly><assembly......
  • Golang Gin 中间件
    一.中间件1packagemain23import(4"fmt"5"gin01/middlewares"6"text/template"7"time"89"github.com/gin-gonic/gin"10)1112/***13中间件的注意事项:14......
  • golang sort包应用
    一、sort内置排序函数函数作用funcFloat64s(x[]float64)对float64类型的切片进行升序排序funcFloat64sAreSorted(x[]float64)bool判断float64类型切片x是否按升序排序funcInts(x[]int)对int类型的切片进行升序排序funcIntsAreSorted(x[]int)bool......
  • Golang学习笔记-自定义日志轮转及输出
    packagepkgimport( "fmt" "log" "log/slog" "os" "time")varcontrolLogger*slog.LoggervarfileLogger*slog.Loggerconst( timeFormat="2006-01-02")funcInitLog(filepathstring){......
  • 第 12 节 JSON应用
    认识JSONJSON(JavaScriptObjectNotation)是一种轻量级的数据交换格式,它基于ECMAScript的一个子集,用于存储和交换文本信息。JSON使用JavaScript的语法描述和操纵数据,但它是Python、Java、C++和其他许多编程语言的一个子集。JSON的特点:语法简单:JSON使用易于阅读的键值对形式表示数......
  • golang常用包详解之: errgroup
    前言:并发编程在现代软件开发中变得越来越重要。Go语言通过goroutine和channel等语言特性为并发编程提供了非常强大的支持,但是在实际开发中,如何有效管理多个goroutine并处理它们可能产生的错误是一个挑战。这时,Go语言的官方库中的errgroup包就能发挥作用。正文:1.errgroup包概述......
  • Golang Gin 请求参数的获取值 & 路由分组 & 控制器继承
    一. 请求参数的获取值  动态路由1typeUserstruct{2Usernamestring`form:"username"json:"username"`3Passwordstring`form:"password"json:"password"`4Ageint`form:"age"json:"......
  • golang 内存分配
    golang的内存分配思想从tcmalloc而来,思路是把对象分配成小对象减少锁的力度或无锁增加效率定义golang内部的页(Page)大小为8B空间大小golang内部把要申请或使用的空间大小分为了三大类:微对象(<16B),小对象(16B~32KB),大对象(>32KB),其中小对象又分为67种,定义在src......
  • golang 原子操作
    在golang中,有原子包,能够实现原子操作,在我分析和猜想下,感觉解开了谜团具体用法不说了,网上一大堆什么cas,add,load,store等,主要是底层实现arm架构在amd架构下,通过汇编指令加锁来实现代码在src/runtime/internal/atomic/atomic_amd64.s//uint64Xadd64(uint64volatile*va......