组合的json文件分隔或者拆分
2023-09-11 14:21:40 时间
一个txt文件,内部的json格式如下:
{ "名称": "#pagecontainer > div.main > div.app-msg > div.app-detail > div > h1", "大小": "#pagecontainer > div.main > div.detail-app-intro > div.main-right > div:nth-child(1) > div > p:nth-child(3)", "更新时间": "#pagecontainer > div.main > div.detail-app-intro > div.main-right > div:nth-child(1) > div > p:nth-child(4)", "版本": "#pagecontainer > div.main > div.detail-app-intro > div.main-right > div:nth-child(1) > div > p:nth-child(5)", "格式": "#pagecontainer > div.main > div.detail-app-intro > div.main-right > div:nth-child(1) > div > p:nth-child(6)", "系统要求": "#pagecontainer > div.main > div.detail-app-intro > div.main-right > div:nth-child(1) > div > p:nth-child(8)", "权限要求": "#pagecontainer > div.main > div.detail-app-intro > div.main-right > div:nth-child(1) > div > div.permissionsDetail.has-border.hide > ul", "好评人数": "#pagecontainer > div.main > div.app-msg > div.app-detail > div > span", "介绍": "#pagecontainer > div.main > div.detail-app-intro > div.main-left > div:nth-child(2) > p:nth-child(4)", "版本更新": "#pagecontainer > div.main > div.detail-app-intro > div.main-left > div:nth-child(2) > p:nth-child(6)", "用户评论": "#pagecontainer > div.main > div.detail-app-intro > div.main-left > div:nth-child(2) > ul" } { "名称": "#pagecontainer > div.main > div.app-msg > div.app-detail > div > h1", "大小": "#pagecontainer > div.main > div.detail-app-intro > div.main-right > div:nth-child(1) > div > p:nth-child(3)", "更新时间": "#pagecontainer > div.main > div.detail-app-intro > div.main-right > div:nth-child(1) > div > p:nth-child(4)", "版本": "#pagecontainer > div.main > div.detail-app-intro > div.main-right > div:nth-child(1) > div > p:nth-child(5)", "格式": "#pagecontainer > div.main > div.detail-app-intro > div.main-right > div:nth-child(1) > div > p:nth-child(6)", "系统要求": "#pagecontainer > div.main > div.detail-app-intro > div.main-right > div:nth-child(1) > div > p:nth-child(8)", "权限要求": "#pagecontainer > div.main > div.detail-app-intro > div.main-right > div:nth-child(1) > div > div.permissionsDetail.has-border.hide > ul", "好评人数": "#pagecontainer > div.main > div.app-msg > div.app-detail > div > span", "介绍": "#pagecontainer > div.main > div.detail-app-intro > div.main-left > div:nth-child(2) > p:nth-child(4)", "版本更新": "#pagecontainer > div.main > div.detail-app-intro > div.main-left > div:nth-child(2) > p:nth-child(6)", "用户评论": "#pagecontainer > div.main > div.detail-app-intro > div.main-left > div:nth-child(2) > ul" } { "名称": "#pagecontainer > div.main > div.app-msg > div.app-detail > div > h1", "大小": "#pagecontainer > div.main > div.detail-app-intro > div.main-right > div:nth-child(1) > div > p:nth-child(3)", "更新时间": "#pagecontainer > div.main > div.detail-app-intro > div.main-right > div:nth-child(1) > div > p:nth-child(4)", "版本": "#pagecontainer > div.main > div.detail-app-intro > div.main-right > div:nth-child(1) > div > p:nth-child(5)", "格式": "#pagecontainer > div.main > div.detail-app-intro > div.main-right > div:nth-child(1) > div > p:nth-child(6)", "系统要求": "#pagecontainer > div.main > div.detail-app-intro > div.main-right > div:nth-child(1) > div > p:nth-child(8)", "权限要求": "#pagecontainer > div.main > div.detail-app-intro > div.main-right > div:nth-child(1) > div > div.permissionsDetail.has-border.hide > ul", "好评人数": "#pagecontainer > div.main > div.app-msg > div.app-detail > div > span", "介绍": "#pagecontainer > div.main > div.detail-app-intro > div.main-left > div:nth-child(2) > p:nth-child(4)", "版本更新": "#pagecontainer > div.main > div.detail-app-intro > div.main-left > div:nth-child(2) > p:nth-child(6)", "用户评论": "#pagecontainer > div.main > div.detail-app-intro > div.main-left > div:nth-child(2) > ul" }
使用json工具类很难直接处理,这个时候可以利用字符串的方式:
private static List<String> getContentFromParenthese(String content) { ArrayList<String> contents = new ArrayList<String>(); int m = 0, n = 0; int count = 0; for (int i = 0; i < content.length(); i++) { if (content.charAt(i) == '{') { if (count == 0) { m = i; } count++; } if (content.charAt(i) == '}') { count--; if (count == 0) { n = i; contents.add(content.substring(m, n + 1)); } } } return contents; }
或者使用数组的方式:
private static List<String> getContentByArray(String content) { ArrayList<String> contents = new ArrayList<String>(); List<Character> segment=new ArrayList<Character>(); int count = 0; for(int i=0;i<content.length();i++){ System.out.println(content.charAt(i)); if (content.charAt(i) == '{') { count++; } if (content.charAt(i) == '}') { count--; } if(count>0){ segment.add(content.charAt(i)); } if(count==0&&segment.size()>0){ StringBuilder str = new StringBuilder(); for (Character character : segment) {// 对ArrayList进行遍历,将字符放入StringBuilder中 str.append(character); } contents.add(str.toString()); segment=new ArrayList<Character>(); } } return contents; }
相关文章
- Objc将数据写入iOS真机的plist文件中
- Python一秒搭建ftp服务器,帮助你在局域网共享文件
- 实例解析java + jQuery + json工作过程(获取JSON数据)
- springboot 模拟上次文件: MultipartFile + json餐食
- 关于plist文件的那些事
- Ubuntu 文件文件夹查看权限和设置权限
- manifest.json文件介绍
- json数据处理:读取文件中的json字符串,转为python字典
- 在JavaScript中使用json.js:使得js数组转为JSON编码
- uni-app+thinkphp: 单图片文件上传(hbuilderx 3.7.3)
- Golang对JSON文件的读写操作
- SAP Fiori Elements 应用 manifest.json 文件里 resources.json 的含义
- SAP WebIDE 里 UI5 应用的隐藏文件 project.json
- 关于 Angular 工程文件 angular.json 里的 inlineCritical 属性
- 一个好用的json文件本地查看工具 - JSON viewer
- 使用java将json文件反序列化成java对象
- Atitit 文档资料处理重要类库与工具 跨语言api和第三方api跨语言 类库工具大概功能功能 Curlhttpclient文件上传下载 数据传输rest doctotext.exe
- SAP Fiori Elements 应用的 manifest.json 文件运行时如何被解析的
- Flutter高级第2篇:JSON的序列化和反序列化、创建模型类转换Json数据
- Python基础——PyCharm版本——第八章、文件I/O(核心1)
- 100天精通Python(数据分析篇)——第59天:Pandas读写json文件(read_json、to_json参数说明+代码实战)
- [h5棋牌项目]-17-C++读取json文件
- Qt使用QJson生成json文件并保存(二)
- 浅析 Linux 文件 IO 读写
- C++读写文件之在Json数组追加元素(二十八)
- VC++通过修改manifest文件来解决Vista/Win7/Win8下应用程序兼容性问题(附源码)
- 1.编写一个简单的C语言程序:根据输入的两个整数求平均值并且在终端输出,通过gcc编译器得到它的汇编程序文件。 2.编写一个C语言程序:打印输出所有“水仙花数”,用gdb调试程序(给出步骤)。所谓“
- WinServer 2012 R2 搭建域控服务器、文件服务器并配置权限