将JSON格式文本转换为可视化配置工具的方法和装置与流程

文档序号:30058198发布日期:2022-05-17 19:52阅读:377来源:国知局
将json格式文本转换为可视化配置工具的方法和装置
技术领域
:1.本发明涉及计算机
技术领域
:,尤其涉及一种将json格式文本转换为可视化配置工具的方法和装置。
背景技术
::2.在开发软件时,一些需要经常修改的参数以文本的形式暴露在外面,方便非技术人员根据自身需求进行修改,常见的暴露方式是使用json格式的文本文件,该技术能将各种各样不同结构的json格式的文本文件转换成直观的图形界面,使其修改更为方便。3.但是当前此类工具虽然能清晰地展示json格式上下级结构,并能对立面的关键数据类型进行高亮处理,以及进行搜索和撤销等基本的文本编辑器功能;但这类技术仍然显示的是字符,其值的填写需要查看额外的说明,也无法做到隐藏一些不必要的信息,使得使用者眼花缭乱,无法定位到关键修改点,并且如果需要扩充或去除新的配置项,需要重新发布软件,增加了开发成本。技术实现要素:4.本发明所要解决的技术问题是针对现有技术的不足,提供一种将json格式文本转换为可视化配置工具的方法和装置。5.本发明解决上述技术问题的技术方案如下:一种将json格式文本转换为可视化配置工具的方法,所述方法包括:读取第一json格式文件和所述第一json格式文件的文本内容,并将所述第一json格式文件写入预设路径的文件中;构建画布,对读取到的所述预设路径的文件下的所述第一json格式文件渲染,得到对应的配置界面,所述配置界面中包括基础元素和ui元素;根据所述第一json格式文件的配置项类型和所述第一json格式文件中各配置项,对所述配置界面上的各ui元素进行配置,得到所述第一json格式文件对应的可视化配置工具的配置界面;实时监控用户在所述可视化配置工具的配置界面上的修改内容,并将修改后的所述可视化配置工具的配置界面转换为第二json格式文件,保存至所述预设路径中。6.进一步地,所述读取第一json格式文件和所述第一json格式文件的文本内容,并将所述第一json格式文件写入预设路径的文件中,具体包括:将所述第一json格式文件放入指定路径下,当程序启动时,读取所述指定路径下的所述第一json格式文件;判断所述第一json格式文件是否符合预设json格式;若是,则将所述第一json格式文件的文本内容中的数据结构进行存储。7.进一步地,所述构建画布,对读取到的所述预设路径的文件下的所述第一json格式文件渲染,得到对应的配置界面,所述配置界面中包括基础元素和ui元素,具体包括:对所述第一json格式文件渲染出所述配置界面的基础元素;根据所述第一json格式文件的数量,在所述配置界面上渲染出对应数量的标签按钮组件,其中在所述标签按钮上标注对应的所述第一json格式文件的名称;激活所述标签按钮组件,对所述配置界面进行渲染。8.进一步地,所述根据所述第一json格式文件的配置项类型和所述第一json格式文件中各配置项,对所述配置界面上的各ui元素进行配置,得到所述第一json格式文件对应的可视化配置工具的配置界面,具体包括:所述第一json格式文件的配置项类型包括父节点和子配置项;当所述第一json格式文件的配置项类型是父节点时,为所述父节点提供对应的父节点ui元素,并为所述父节点的子配置项提供一个用于显示key键的文本ui元素和一个用于显示value的键值ui元素;根据所述子配置项的内容,确定所述子配置项的配置辅助标签。9.进一步地,所述根据所述子配置项的内容,确定所述子配置项的配置辅助标签,具体包括:当所述父节点的key值是场景业务配置时,将所述父节点的子配置项中key值是类型的配置项贴上“hide”标签;当所述父节点的key值是视频插件的传输模式配置时,将所述父节点的子配置项的value输入元素替换为下拉菜单ui元素;当所述父节点的key值是场景列表中子系统配置时,将所述父节点的父节点ui元素的右侧生成一个按钮组件,所述按钮组件用于当用户点击时,在所述父节点下根据所述子配置项的内容生成对应的子配置项集合;当所述父节点的key值是管线按钮组的按钮组中显示层级的配置时,将所述父节点ui元素的子配置项的value输入元素替换为下拉菜单ui元素,所述下拉菜单ui元素用于用户勾选所述下拉菜单ui中对应的内容,并将勾选的内容以数组形式保存至所述子配置项的value中;当所述父节点的key值是建筑顶牌中的图标配置时,根据所述父节点的子配置项的value值内容,获取对应的贴图,并将value输入元素替换为所述贴图;当所述父节点的key值是图标颜色时,当所述父节点的子配置项的value值符合第一预设规则时,将value输入元素替换为颜色条;当所述父节点的子配置项的value值是true或false设置时,将value输入元素替换为开关ui。10.进一步地,所述实时监控用户在所述可视化配置工具的配置界面上的修改内容,并将修改后的所述可视化配置工具的配置界面转换为第二json格式文件,保存至所述预设路径中,具体包括:实时监测用户在所述可视化配置工具的配置界面上的修改内容,并记录所述修改内容;对所述修改内容与所述配置界面的原内容进行比对,若不一致,则将所述原内容替换为所述修改内容;当监测到所述用户点击保存按钮时,将所述配置界面反序列化为所述第二json格式文件,并将所述第二json格式文件保存至所述预设路径中。11.本方法发明的有益效果是:提出了一种将json格式文本转换为可视化配置工具的方法,包括读取第一json格式文件和所述第一json格式文件的文本内容,并将所述第一json格式文件写入预设路径的文件中;构建画布,对读取到的所述预设路径的文件下的所述第一json格式文件渲染,得到对应的配置界面,所述配置界面中包括基础元素和ui元素;根据所述第一json格式文件的配置项类型和所述第一json格式文件中各配置项,对所述配置界面上的各ui元素进行配置,得到所述第一json格式文件对应的可视化配置工具的配置界面,实时监控用户在所述可视化配置工具的配置界面上的修改内容,并将修改后的所述可视化配置工具的配置界面转换为第二json格式文件,保存至所述预设路径中。本发明提供了一个快速转换成可视化配置工具的方案,若想新增、修改或删减配置项时,无需重新发布软件,直接修改原有json文本,对应的可视化配置工具便直接生效为修改后的界面,提高了配置的直观性和便捷性,也降低了开发成本。12.本发明解决上述技术问题的另一技术方案如下:一种将json格式文本转换为可视化配置工具的装置,所述装置包括:预读模块,用于读取第一json格式文件和所述第一json格式文件的文本内容,并将所述第一json格式文件写入预设路径的文件中;基础构建模块,用于构建画布,对读取到的所述预设路径的文件下的所述第一json格式文件渲染,得到对应的配置界面,所述配置界面中包括基础元素和ui元素;生成模块,用于根据所述第一json格式文件的配置项类型和所述第一json格式文件中各配置项,对所述配置界面上的各ui元素进行配置,得到所述第一json格式文件对应的可视化配置工具的配置界面;修改模块,用于实时监控用户在所述可视化配置工具的配置界面上的修改内容,并将修改后的所述可视化配置工具的配置界面转换为第二json格式文件,保存至所述预设路径中。13.进一步地,所述预读模块,具体用于将所述第一json格式文件放入指定路径下,当程序启动时,读取所述指定路径下的所述第一json格式文件;判断所述第一json格式文件是否符合预设json格式;若是,则将所述第一json格式文件的文本内容中的数据结构进行存储。14.此外,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述技术方案中任一项所述的将json格式文本转换为可视化配置工具的方法的步骤。15.本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述技术方案中任一项所述的将json格式文本转换为可视化配置工具的方法的步骤。16.本发明附加的方面的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明实践了解到。附图说明17.为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面所描述的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。18.图1为本发明实施例所示的一种将json格式文本转换为可视化配置工具的方法的流程示意图;图2为本发明另一实施例所示的一种将json格式文本转换为可视化配置工具的装置的模块示意图;图3为本发明基于实施例所示的配置内容及生成的配置界面的示意图。具体实施方式19.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明的一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都应属于本发明保护的范围。20.如图1所示,本发明实施例所述的一种将json格式文本转换为可视化配置工具的方法,方法包括以下步骤:110、读取第一json格式文件和所述第一json格式文件的文本内容,并将所述第一json格式文件写入预设路径的文件中。21.120、构建画布,对读取到的所述预设路径的文件下的所述第一json格式文件渲染,得到对应的配置界面,所述配置界面中包括基础元素和ui元素。22.130、根据所述第一json格式文件的配置项类型和所述第一json格式文件中各配置项,对所述配置界面上的各ui元素进行配置,得到所述第一json格式文件对应的可视化配置工具的配置界面。23.140、实时监控用户在所述可视化配置工具的配置界面上的修改内容,并将修改后的所述可视化配置工具的配置界面转换为第二json格式文件,保存至所述预设路径中。24.进一步地,步骤110中具体包括:将所述第一json格式文件放入指定路径下,当程序启动时,读取所述指定路径下的所述第一json格式文件。25.判断所述第一json格式文件是否符合预设json格式。26.若是,则将所述第一json格式文件的文本内容中的数据结构进行存储。27.进一步地,步骤120中具体包括:对所述第一json格式文件渲染出所述配置界面的基础元素。28.根据所述第一json格式文件的数量,在所述配置界面上渲染出对应数量的标签按钮组件,其中在所述标签按钮上标注对应的所述第一json格式文件的名称。29.激活所述标签按钮组件,对所述配置界面进行渲染。30.进一步地,步骤130中具体包括:131、所述第一json格式文件的配置项类型包括父节点和子配置项。31.132、当所述第一json格式文件的配置项类型是父节点时,为所述父节点提供对应的父节点ui元素,并为所述父节点的子配置项提供一个用于显示key键的文本ui元素和一个用于显示value的键值ui元素。32.133、根据所述子配置项的内容,确定所述子配置项的配置辅助标签。33.进一步地,步骤133中具体包括:当所述父节点的key值是场景业务配置时,将所述父节点的子配置项中key值是类型的配置项贴上“hide”标签。34.当所述父节点的key值是视频插件的传输模式配置时,将所述父节点的子配置项的value输入元素替换为下拉菜单ui元素。35.当所述父节点的key值是场景列表中子系统配置时,将所述父节点的父节点ui元素的右侧生成一个按钮组件,所述按钮组件用于当用户点击时,在所述父节点下根据所述子配置项的内容生成对应的子配置项集合。36.当所述父节点的key值是管线按钮组的按钮组中显示层级的配置时,将所述父节点ui元素的子配置项的value输入元素替换为下拉菜单ui元素,所述下拉菜单ui元素用于用户勾选所述下拉菜单ui中对应的内容,并将勾选的内容以数组形式保存至所述子配置项的value中。37.当所述父节点的key值是建筑顶牌中的图标配置时,根据所述父节点的子配置项的value值内容,获取对应的贴图,并将value输入元素替换为所述贴图。38.当所述父节点的key值是图标颜色时,当所述父节点的子配置项的value值符合第一预设规则时,将value输入元素替换为颜色条。39.应理解,第一预设规则是判断是否符合带“#”且“#”后面跟着8个字符,或是设置的其他一些预设规则,本实施例中不做限制。40.当所述父节点的子配置项的value值是true或false设置时,将value输入元素替换为开关ui。41.进一步地,步骤140中具体包括:实时监测用户在所述可视化配置工具的配置界面上的修改内容,并记录所述修改内容。42.对所述修改内容与所述配置界面的原内容进行比对,若不一致,则将所述原内容替换为所述修改内容。43.当监测到所述用户点击保存按钮时,将所述配置界面反序列化为所述第二json格式文件,并将所述第二json格式文件保存至所述预设路径中。44.应理解,实际应用中,可以通过以下方式实现本技术中的技术方案。45.1、建立用于读取系统文件的文件读取模块,可通过相应路径获取到指定文件并读取到文件内的文本内容,同时提供文件改写功能,可将指定文本写入对应路径的文件中。46.2、构建图形画布,画布可渲染出2d图形元素,提供按钮组件、文本输入组件、文本显示组件、贴图组件等常用的ui元素。47.3、组合图形画布提供的基础元素,生成两种配置项ui元素和多种可视化配置工具。48.4、根据json文本内容及辅助配置工具内容,解析每个配置项并转换为相应的配置项ui元素。49.5、为响应的配置项提供用户交互逻辑,可通过可视化辅助工具修改后,转换成json格式文本,并保存回先前读取的json格式文件中。50.其中,步骤1建立用于读取系统文件的文件读取模块,可通过相应路径获取到指定文件并读取到文件内的文本内容,同时提供文件改写功能,可将指定文本写入对应路径的文件中,具体包括:1.1、程序指定一个相对路径作为配置文件存储的位置。51.1.2、用户将需要展示的json文件放到指定路径中。52.1.3、程序启动自动读取指定路径下的所有文件。53.1.4、判断文件文本内容是否符合json格式。54.1.5、若符合,则转换为对应的数据结构存储到程序中,若不符合则跳过该文件。55.如图3所示,步骤2构建图形画布,画布可渲染出2d图形元素,提供按钮组件、文本输入组件、文本显示组件、贴图组件等常用的ui元素,具体包括以下步骤:2.1、程序启动后,将渲染出配置编辑界面的基础元素,例如:标题,装饰等。56.2.2、根据文件数量,渲染出对应数量的标签按钮,按钮上显示文件名称,方便用户识别出对应文件的配置界面。57.2.3、默认激活第一个标签按钮,渲染出对应文件的配置界面。58.步骤3组合图形画布提供的基础元素,生成两种配置项ui元素和多种可视化配置工具中包括:json格式主要有两种配置文本组成,分别是显示父节点的“key:{}”和显示子配置项的“key:value”。59.相应的,为父节点“key:{}”提供一个ui元素,仅左对齐地显示key的文本ui元素,为子配置项的“key:value”提供一个显示key的文本ui元素和一个显示并可输入修改value的ui元素。60.针对特殊的子配置项内容,提供了“hide”、“dropdown”、“addible”、“selectable”、“texture”、“color”、“bool”配置辅助标签。61.1)"场景业务配置":hide@类型:程序将key值为“场景业务配置”父节点下,子配置项key值为“类型”的配置项隐藏,使用户无法获取或修改该配置项内容。62.2)"视频插件配置/传输模式":"dropdown@udp模式,tcp模式"程序在“:”左侧路径下的子配置项的value输入元素替换为下拉菜单ui,用户通过下拉菜单选择“@”后面用“,”隔开的两个内容来替换子配置项value值内容。63.3)"场景列表配置/子系统/":"addible@{\"关联文件夹\":\"firecontrol\"}"程序在“:”左侧路径下的父节点右侧生成一个新增按钮,用户点击新增按钮后,会在该父节点下根据配置“:”右侧的内容生成对应的子配置项集合。64.4)"管线按钮组/按钮组/*/显示层级":"selectable@园区,建筑,楼层"程序在“:”左侧路径下的子配置项的value输入元素替换为下拉菜单ui,并根据配置“:”右侧的内容生成勾选项,用户可通过下拉菜单勾选响应的内容,程序会将勾选的内容以数组的形式保存到子配置项的value中。65.5)"建筑顶牌/图标":"texture@"程序根据“:”左侧路径下的子配置项的value值内容,获取到指定路径下的贴图资源,并将value输入元素替换为该贴图,用户点击贴图后,可在弹出的文件选择窗口中替换原本图片资源。程序会将指定图片路径字符串替换原value内容。66.6)"图标颜色":"#ffffffff"程序识别子配置项的value值内容,若符合带“#”且“#”后面跟着8个字符,便将value输入元素替换为颜色条,用户可通过点击颜色条,在弹出的颜色拾取器中挑选颜色。程序将挑选的颜色改为hex格式替换原value内容。67.7)"是否平铺":false程序识别子配置项的value值内容若为“true”或“false”,则将value输入元素替换为开关ui,用户可通过点击开关来切换,程序将切换后的状态转换为“true”或“false”替换原value内容。68.步骤4中根据json文本内容及辅助配置工具内容,解析每个配置项并转换为相应的配置项ui元素,具体包括:4.1、程序实时监测用户交互情况,记录用户修改配置后的修改内容。69.4.2、比对修改后的内容是否与原内容一致,若一致则保留原内容,若不一致则将原内容替换为新内容。70.步骤5中为响应的配置项提供用户交互逻辑,可通过可视化辅助工具修改后,转换成json格式文本,并保存回先前读取的json格式文件中,具体包括:5.1、程序监测到用户点击保存按钮。71.5.2、将配置界面反序列化为json文本。72.5.3、通过文件读取组件将json文本替换指定路径下对应文件名的文件内容。73.5.4、完成配置文件的修改。74.本实施例将可视化配置工具和目前市面上常用的json格式配置文本巧妙地结合到一起,实现了非技术人员可通过图形界面对软件内部参数进行调整,无需额外进行培训,学习软件配置说明。技术人员可直接修改json文本,选择对外暴露哪些配置项,即放宽了技术人员配置约束,又限制了非技术人员配置的范围。修改json文本可实时作用于图形界面,无需重复发布软件,降低开发成本。75.基于上述实施例所提出的一种将json格式文本转换为可视化配置工具的方法,包括读取第一json格式文件和所述第一json格式文件的文本内容,并将所述第一json格式文件写入预设路径的文件中;构建画布,对读取到的所述预设路径的文件下的所述第一json格式文件渲染,得到对应的配置界面,所述配置界面中包括基础元素和ui元素;根据所述第一json格式文件的配置项类型和所述第一json格式文件中各配置项,对所述配置界面上的各ui元素进行配置,得到所述第一json格式文件对应的可视化配置工具的配置界面,实时监控用户在所述可视化配置工具的配置界面上的修改内容,并将修改后的所述可视化配置工具的配置界面转换为第二json格式文件,保存至所述预设路径中。本发明提供了一个快速转换成可视化配置工具的方案,若想新增、修改或删减配置项时,无需重新发布软件,直接修改原有json文本,对应的可视化配置工具便直接生效为修改后的界面,提高了配置的直观性和便捷性,也降低了开发成本。76.如图2所述,一种将json格式文本转换为可视化配置工具的装置,所述装置包括:预读模块,用于读取第一json格式文件和所述第一json格式文件的文本内容,并将所述第一json格式文件写入预设路径的文件中。77.基础构建模块,用于构建画布,对读取到的所述预设路径的文件下的所述第一json格式文件渲染,得到对应的配置界面,所述配置界面中包括基础元素和ui元素。78.生成模块,用于根据所述第一json格式文件的配置项类型和所述第一json格式文件中各配置项,对所述配置界面上的各ui元素进行配置,得到所述第一json格式文件对应的可视化配置工具的配置界面。79.修改模块,用于实时监控用户在所述可视化配置工具的配置界面上的修改内容,并将修改后的所述可视化配置工具的配置界面转换为第二json格式文件,保存至所述预设路径中。80.进一步地,所述预读模块,具体用于将所述第一json格式文件放入指定路径下,当程序启动时,读取所述指定路径下的所述第一json格式文件;判断所述第一json格式文件是否符合预设json格式。81.若是,则将所述第一json格式文件的文本内容中的数据结构进行存储。82.此外,本发明还提供一种计算机可读存储介质,其上存储有计算机程序,该程序被处理器执行时实现上述技术方案中任一项所述的将json格式文本转换为可视化配置工具的方法的步骤。83.本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述技术方案中任一项所述的将json格式文本转换为可视化配置工具的方法的步骤。84.以上,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本
技术领域
:的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。当前第1页12当前第1页12
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1