亚洲精品久久久中文字幕-亚洲精品久久片久久-亚洲精品久久青草-亚洲精品久久婷婷爱久久婷婷-亚洲精品久久午夜香蕉

您的位置:首頁技術(shù)文章
文章詳情頁

Java Json字符串的雙引號("")括號如何去掉

瀏覽:20日期:2022-08-24 18:21:50

我就廢話不多說了,大家還是直接看代碼吧~

//自己copy試一下比什么都好public static void main(String[] args) {String json = '['name':'value','value1']'; String t = json.replaceAll(''','');System.out.println('去除雙引號和斜杠后:'+t);String replaceAll = t.replace('[', '').replace(']','');System.out.println('去除左右中括號后:'+replaceAll);}

補(bǔ)充知識:java 替換json字符串中間的引號保留兩邊的引號,避免json校驗(yàn)失敗

問題描述

解析爬取的json數(shù)據(jù)時(shí),報(bào)如下錯(cuò)誤:

com.alibaba.fastjson.JSONException: syntax error, position at 4164, name mc at com.alibaba.fastjson.parser.DefaultJSONParser.parseObject(DefaultJSONParser.java:586) at com.alibaba.fastjson.parser.DefaultJSONParser.parseArray(DefaultJSONParser.java:1157) at com.alibaba.fastjson.parser.DefaultJSONParser.parseObject(DefaultJSONParser.java:476) at com.alibaba.fastjson.parser.DefaultJSONParser.parse(DefaultJSONParser.java:1327) at com.alibaba.fastjson.parser.DefaultJSONParser.parse(DefaultJSONParser.java:1293) at com.alibaba.fastjson.JSON.parse(JSON.java:137) at com.alibaba.fastjson.JSON.parse(JSON.java:128) at com.alibaba.fastjson.JSON.parseObject(JSON.java:201) at com.nawang.crawl.GuizhouEnterpriseListCrawlAll2.crawlList(GuizhouEnterpriseListCrawlAll2.java:210) at com.nawang.crawl.GuizhouEnterpriseListCrawlAll2.main(GuizhouEnterpriseListCrawlAll2.java:85)

問題原因

獲取到”d”名稱對應(yīng)的所需結(jié)果

String allData = (String) JSONObject.parseObject(searchListStr).get('d');

調(diào)試時(shí)發(fā)現(xiàn)結(jié)果集 allData 字符串中間含有1個(gè)或多個(gè)雙引號(”)導(dǎo)致校驗(yàn)失敗

{'mc':'崔記'純凈水經(jīng)營部'},

{'mc':'貳+壹'休閑吧'},

{'mc':'富貴鳥'皮鞋經(jīng)營店'},

{'mc':'紅萍果'窗簾'}

用在線JSON校驗(yàn)格式化工具解析報(bào)錯(cuò):

第1行解析錯(cuò)誤:

{'mc':'崔記'純凈水經(jīng)營部'},{'mc':'貳+壹

----------^

期望是 ’EOF’, ’}’, ’:’, ’,’, ’]’

將字符串中間的雙引號”去掉就符合JSON格式了,校驗(yàn)成功。

解決方法

當(dāng)然是想辦法如何去掉字符串中間的雙引號。

直接替換引號是不行的,名稱/值對全是雙引號括起來的,只是多了中間的雙引號。

最后想了個(gè)方法,利用名稱/值對的固定格式進(jìn)行雙引號單引號替換,其余的雙引號替換為空,然后單引號替換回雙引號。原字符串如 :

{“mc”:”崔記”純凈水經(jīng)營部”},{“mc”:”貳+壹”休閑吧”},…

String s = allData.replaceAll('{'','{’') // {' --> {’ .replaceAll('':'', '’:’') // ':' --> ’:’ .replaceAll('','', '’,’') // ',' --> ’,’ .replaceAll('':', '’:') // ': --> ’: .replaceAll(','', ',’') // ,' --> ,’ .replaceAll(''}', '’}') // '} --> ’} .replaceAll(''', '') // ' --> 空,以去掉字符串中間的引號 .replaceAll('’', ''') // ’ --> ',所有的單引號替換回雙引號 .replaceAll('<br />', '') // 去掉字符串中的<br /> .replaceAll('', '?'); // 字符串中含也會導(dǎo)致解析失敗JSONObject jsonData = JSONObject.parseObject(s);

這樣處理后,JSON 解析成功。

以上這篇Java Json字符串的雙引號('')括號如何去掉就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持好吧啦網(wǎng)。

標(biāo)簽: Java
相關(guān)文章:
主站蜘蛛池模板: 日本高清在线精品一区二区三区 | 欧美日韩在线一区 | 国产精品爱久久久久久久9999 | 久久涩精品 | 国产精品情侣久久婷婷文字 | 日韩欧美中文字幕一区 | 日本中出视频 | 一区二区三区无码高清视频 | 久久久久久88色愉愉 | 欧美成人免费一级人片 | 国产色产综合色产在线观看视频 | 国产精品久久国产三级国不卡顿 | 日本高清不卡免费 | 青青青在线视频国产 | 任你操网站| 精品一区二区三区在线播放 | 日韩欧国产精品一区综合无码 | 亚洲v欧美v日韩v国产v | 亚洲欧美成人中文日韩电影 | 黄色在线免费网站 | 黄色一级视频在线播放 | 国产高清国内精品福利色噜噜 | 精品日韩一区 | 欧美日韩在线观看一区 | 亚洲天堂一区二区三区四区 | 亚洲成人网在线 | 日本a毛片 | 亚洲综合图色 | 亚洲国产日韩欧美一区二区三区 | 天天久久综合 | 亚洲精品99久久一区二区三区 | 日本zzzzzzz毛片 | 黄色免费网址在线观看 | 成人免费草草视频 | 91麻豆怎么进去 | 风间中文字幕亚洲一区中文馆 | 波多久久夜色精品国产 | 国产成人综合亚洲欧美在 | 久久综合狠狠综合久久综合88 | 91网址免费入口 | 精品久久国产 |