一种基于表格支持解析多键值的多行数据转json文件方法技术

技术编号:39056720 阅读:12 留言:0更新日期:2023-10-12 19:49
本发明专利技术涉及软件开发数据交互技术领域,公开了一种基于表格支持解析多键值的多行数据转json文件方法,包括:获取文件、数据库地址;进行前置验证,以确定地址是否正确、内容是否为空、文件格式是否正确;当内容不为空时,获取内容,并进行格式化处理;当前置验证均正确时,解析数据信息并生成json数据,以保存、输出显示文件内容返回终端界面。当前置内容有一项不正确时,输出错误提示消息返回终端界面。本发明专利技术提供的基于表格支持解析多键值的多行数据转json文件方法,解决目前json内容若以value的所有key按顺序结合成一个新的key组成key列+value列的方式保存后,无法自动解析还原成初始json格式的问题。始json格式的问题。始json格式的问题。

【技术实现步骤摘要】
一种基于表格支持解析多键值的多行数据转json文件方法


[0001]本专利技术涉及软件开发数据交互
,特别涉及一种基于表格支持解析多键值的多行数据转json文件方法。

技术介绍

[0002]在实际开发过程中,经常会需要不同软件或者接口之间数据传输与交互。因此json有着数据格式比较简单,易于读写,压缩,占用带宽小,网络传输速度快,支持多种语言等等这样的天然优势成为开发者们或者相关人员的首选格式。
[0003]然而,实际工作中由于某些因素,在保存json文件时往往会以key1.key2

=xxx这样的keys

value形式在表格或者数据库中表述json内容,因此需要特定的工具将这些二维数据转换成真实的json格式。

技术实现思路

[0004]本专利技术提供了一种基于表格支持解析多键值的多行数据转json文件方法,解决目前json内容若以value的所有key按顺序结合成一个新的key组成key列+value列的方式保存后,无法自动解析还原成初始json格式的技术问题。
[0005]本专利技术提供了一种基于表格支持解析多键值的多行数据转json文件方法,包括:
[0006]S1、获取文件、数据库地址;其中,所述文件的格式为.xlsx/.csv;
[0007]S2、进行前置验证,以确定地址是否正确、内容是否为空、文件格式是否正确;
[0008]S3、当内容不为空时,获取内容,并进行格式化处理;
[0009]S4、当前置验证均正确时,解析数据信息并生成json数据,以保存、输出显示文件内容返回终端界面。
[0010]S5、当前置内容有一项不正确时,输出错误提示消息返回终端界面。
[0011]进一步地,步骤S4中,解析数据信息并生成json数据包括:
[0012]S41、从Excel文件中读取键值对数据所在的列;
[0013]S42、创建一个空字典“result”作为转换结果的容器
[0014]S43、通过字符串分割和字典嵌套的技术,逐级解析键的层级关系;
[0015]S44、将对应的值赋给最内层键,形成嵌套字典的结构;
[0016]S45、将转换后的字典写入一个新的json文件中。
[0017]进一步地,步骤S43中,通过字符串分割和字典嵌套的技术,逐级解析键的层级关系,包括:
[0018]S431、读取键值对数据所在的列的单元格数据,得到键和值;
[0019]S432、使用点号将键按层级分割,得到键的层级列表;
[0020]S433、初始化当前字典为“result”。
[0021]进一步地,步骤S44中,将对应的值赋给最内层键,形成嵌套字典的结构,包括:
[0022]S441、对于层级列表中除了最后一个键的每个键,如果不在当前字典中,将其作为
键创建一个新的空字典,并将其赋值给新的空字典;
[0023]S442、将当前字典更新为新的空字典,进入下一层级。
[0024]本专利技术的有益效果为:
[0025]本专利技术的实现keys

value两列多行数据转json数据的方法,依据定制的算法与逻辑在极短的时间内获取任意节点的key值以及该key的父节点以及所有子节点的key值。该方法操作简单,只需要提供文件\数据库地址以及用户、密码即可,弥补了需要实现keys

value转json只能手动转换而无法自动实现的目前现状。
附图说明
[0026]图1为本专利技术一实施例的方法流程示意图。
[0027]本专利技术目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
[0028]应当理解,此处所描述的具体实施例仅仅用以解释本专利技术,并不用于限定本专利技术。
[0029]如图1所示,本专利技术涉及API接口规范使用的场景,提供一种快速解决keys

value形式的多键

值对二维数据解析成通用json格式数据方案的实现,通过将指定的Excel、CSV文件、DataBase(mysql)内容转成json文本输出,并为该设计提供参考,具有极高的实用价值。
[0030]本专利技术提供了一种基于表格支持解析多键值的多行数据转json文件方法,通过获取原始数据并对该数据进行分析得到真实转换后的json数据,包括:
[0031]S1、获取文件、数据库地址;其中,所述文件的格式为.xlsx/.csv;
[0032]S2、进行前置验证,以确定地址是否正确、内容是否为空、文件格式是否正确;
[0033]S3、当内容不为空时,获取内容,并进行格式化处理;
[0034]S4、当前置验证均正确时,解析数据信息并生成json数据,以保存、输出显示文件内容返回终端界面。生成接口数据,可供其他服务后端调用获取。
[0035]S5、当前置内容有一项不正确时,输出错误提示消息返回终端界面。
[0036]在步骤S4中,解析数据信息并生成json数据包括:
[0037]S41、从Excel文件中读取键值对数据所在的列;
[0038]S42、创建一个空字典“result”作为转换结果的容器
[0039]S43、通过字符串分割和字典嵌套的技术,逐级解析键的层级关系;
[0040]步骤S43包括:
[0041]S431、读取键值对数据所在的列的单元格数据,得到键和值;
[0042]S432、使用点号将键按层级分割,得到键的层级列表;
[0043]S433、初始化当前字典为“result”。
[0044]通过字典嵌套和数据结构转换的技术,实现了快速解析和转换Excel中的键值对数据;生成对应的JSON格式数据文件,保持数据的层级结构清晰和易于访问。
[0045]S44、将对应的值赋给最内层键,形成嵌套字典的结构;
[0046]步骤S44包括:
[0047]S441、对于层级列表中除了最后一个键的每个键,如果不在当前字典中,将其作为
键创建一个新的空字典,并将其赋值给新的空字典;
[0048]S442、将当前字典更新为新的空字典,进入下一层级。
[0049]通过读取Excel文件、解析单元格数据,实现了对键值对数据的快速解析;利用字典嵌套和数据结构转换的技术,准确地将键值对数据转换为JSON格式数据文件。
[0050]S45、将转换后的字典写入一个新的json文件中。
[0051]实现示例
[0052]输入(excel文件地址):
[0053] AB 1case1.key2.test3value1 2case1.key3value2
[0054]输出:
[0055][0056][0057]上述实现仅为一个简单例子,实际还可以兼容数组格式(规则默认以...

【技术保护点】

【技术特征摘要】
1.一种基于表格支持解析多键值的多行数据转json文件方法,其特征在于,包括:S1、获取文件、数据库地址;其中,所述文件的格式为.xlsx/.csv;S2、进行前置验证,以确定地址是否正确、内容是否为空、文件格式是否正确;S3、当内容不为空时,获取内容,并进行格式化处理;S4、当前置验证均正确时,解析数据信息并生成json数据,以保存、输出显示文件内容返回终端界面。S5、当前置内容有一项不正确时,输出错误提示消息返回终端界面。2.根据权利要求1所述的基于表格支持解析多键值的多行数据转json文件方法,其特征在于,步骤S4中,解析数据信息并生成json数据包括:S41、从Excel文件中读取键值对数据所在的列;S42、创建一个空字典“result”作为转换结果的容器S43、通过字符串分割和字典嵌套的技术,逐级解析键的层级关系;S44、将对...

【专利技术属性】
技术研发人员:代文亮蒋历国封来成唐叶亮
申请(专利权)人:芯和半导体科技上海股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1