推荐一款好用的golang修复无效json的库:JSONRepair

news/2024/9/19 9:21:01/文章来源:https://www.cnblogs.com/shuinanxun/p/18406362

简单来说,就是可以将错误格式(非标准)的json修正,如下图所示:

 

我的json明显不是标准的json格式,是不能被解析的:

 

但是JSONRepair库也能修复。

 

github地址:
https://github.com/kaptinlin/jsonrepair

使用也非常简单:

1、安装:

go get github.com/kaptinlin/jsonrepair

  

2、使用:

package mainimport ("fmt""log""github.com/kaptinlin/jsonrepair"
)func main() {// The following is invalid JSON: it consists of JSON contents copied from// a JavaScript code base, where the keys are missing double quotes,// and strings are using single quotes:json := "{name: 'John'}"repaired, err := jsonrepair.JSONRepair(json)if err != nil {log.Fatalf("Failed to repair JSON: %v", err)}fmt.Println(repaired) // '{"name": "John"}'
}

  

JSONRepair库支持的特性:

 

看它的test文件是已经覆盖了很多种异常情况的处理:

 

缺少结束标识的也能自动补上:

 

这篇分享文章就到这里啦!如果你对文章内容有疑问或想要深入讨论,欢迎在评论区留言,我会尽力回答。同时,如果你觉得这篇文章对你有帮助,不妨点个赞并分享给其他同学,让更多人受益。

想要了解更多相关知识,可以查看我以往的文章,其中有许多精彩内容。记得关注我,获取及时更新,我们可以一起学习、讨论技术,共同进步。

感谢你的阅读与支持,期待在未来的文章中与你再次相遇!

我的微信公众号:【xdub】,欢迎大家订阅,我会同步文章到公众号上。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/794957.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

全志T507-H国产平台Ubuntu系统正式发布,让您的应用开发更便捷!

为了满足广大工业用户的需求,创龙科技针对全志T507-H工业平台进行了Ubuntu系统适配,开发环境如下: Ubuntu:Ubuntu18.04.4 U-Boot:U-Boot-2018.05 Kernel:Linux-4.9.170、Linux-RT-4.9.170 LinuxSDK:LinuxSDK-[版本号].tar.gz (基于全志官方V2.0_20220618)全志T507-H国…

IEC103设备数据 转 IEC61850项目案例

目录 1 案例说明 1 2 VFBOX网关工作原理 1 3 准备工作 2 4 配置VFBOX网关采集103设备数是 2 5 用IEC61850协议转发数据 4 6 网关使用多个逻辑设备和逻辑节点的方法 6 7 IEC103协议说明 8 8 案例总结 9 1 案例说明设置网关采集IEC103设备数据 把采集的数据转成IEC61850协议转发给…

【触想智能】工业一体机在物流领域上的四大应用分析

随着物流业的快速发展,工业一体机在物流领域上的应用越来越普遍。工业一体机是一种高级智能设备,是多种技术的综合应用,包括机械、电子、计算机、通讯等。在物流行业中,工业一体机可以发挥其先进的技术和功能,提高物流的效率和质量。本文将探讨工业一体机在物流领域上的应…

使用 nuxi upgrade 升级现有nuxt项目版本

title: 使用 nuxi upgrade 升级现有nuxt项目版本 date: 2024/9/10 updated: 2024/9/10 author: cmdragon excerpt: 摘要:本文介绍了如何使用nuxi upgrade命令升级Nuxt 3项目,包括打开终端、运行升级命令、使用选项、测试项目等步骤,以及升级前的注意事项,如备份代码、检查…

[MySQL]为什么主键最好是有序递增的

为什么主键索引最好是有序递增的我们在建表的时候,都会默认将主键索引设置为自增的,具体为什么要这样做呢?又什么好处? InnoDB 创建主键索引默认为聚簇索引,数据被存放在了 B+Tree 的叶子节点上。也就是说,同一个叶子节点内的各个数据是按主键顺序存放的,因此,每当有一…

Oracle 19c OCP 认证考试 082 题库(第18题)- 2024年修正版

【优技教育】Oracle 19c OCP 082题库(Q 18题)- 2024年修正版 考试科目:1Z0-082 考试题量:90 通过分数:60% 考试时间:150min 本文为(CUUG 原创)整理并解析,转发请注明出处,禁止抄袭及未经注明出处的转载。 原文地址:http://www.cuug.com.cn/ocp/082kaoshitiku/3821954095…

盘点一个Python自动化办公实战问题

大家好,我是Python进阶者。 一、前言 前几天在Python白银交流群【上海新年人】问了一个Python自动化办公实战的问题,问题如下:大佬们,我有个难度高的问题,我有个文件夹,里面呢有一堆文件,然后我要寻找至少2个关键字相同的文件,然后提取文件中第二列中的数字,第一列名称…

路由相关

路由分发研究django admin源码时:namespace是什么?无namespace from django.urls import reverseurl = reverse("v2") print(url)有namespace from django.urls import reverseurl = reverse("namespace名称:v2") print(url)url = reverse("namespa…

CS上线Linux

CS上线Linux下载和配置crossC2首先到项目地址:https://github.com/gloxec/CrossC2/releases下载两个文件 ​​‍.cna是CS的插件,直接使用CS导入即可 ​​ 创建HTTPS监听器似乎Linux的shell目前只支持https​,所以创建HTTPS监听器 ​​ 生成Linux终端的shell木马 第一种 ./ge…

说文解字的各种版本总结以及常用的说文解字相关学习网站推荐

《说文解字》内容共十五卷,以小篆为研究对象,同时参照小篆以外的古文、籀文,其中一至十四卷为文字解说,十五卷为叙目,每卷都分上下两篇,实为三十卷。共收字头9353个,重文(古文、异体等)1163个,字头以小篆为准,兼有古文、籀文等异体。《说文解字》‌是中国乃至世界第…

P7230 [COCI2015-2016#3] NEKAMELEONI

单侧递归有点小牛的这个做法与 \(k\) 无关。 非常好常数,爱来自 Hanghang。 Hanghang 给出了一个空间 \(O(n)\),常数很小,代码很短的单侧递归做法。 我们考虑维护哪些区间是不符合要求的,对于一个数 \(a_x\),下一个 \(a_x\) 下标是 \(d_x\),则满足 \(x<l\le r<d_x\…