溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

json串反轉(zhuǎn)義的示例分析

發(fā)布時(shí)間:2021-08-17 14:04:16 來源:億速云 閱讀:148 作者:小新 欄目:web開發(fā)

小編給大家分享一下json串反轉(zhuǎn)義的示例分析,相信大部分人都還不怎么了解,因此分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后大有收獲,下面讓我們一起去了解一下吧!

JSon串在被串行化后保存在文件中,讀取字符串時(shí),是不能直接拿來用JSON.parse()解析為JSON  對(duì)象的。因?yàn)樗且粋€(gè)字符串,不是一個(gè)合法的JSON對(duì)象格式。例如下面的JSON串保存在文件中,讀出來不能直接解析:

“{\"resourceId\":\"dfead70e4ec5c11e43514000ced0cdcaf\",\"properties\":{\"process_id\":\"process4\",\"name\":\"\",\"documentation\":\"\",\"processformtemplate\":\"\"}}"

這個(gè)串如果出現(xiàn)在代碼中是沒有問題的,因?yàn)榉葱备芫捅硎巨D(zhuǎn)義,但如果從文本文件中直接讀出來就是這個(gè)樣子,則不能直接用JSON.parse()進(jìn)行解析,需要反串行化,消除掉反斜杠。有些programmer喜歡自己寫一個(gè)工具類來做這樣的事情,但已經(jīng)有方便快捷的工具類可以來做這件事情,毋需我們重復(fù)發(fā)明車輪子。

可以直接使用Apache 的 common.lang工具包(使用工具類:org.apache.commons.lang.StringEscapeUtils)。例子如下:

 public void test(){
 String str1 = "{\"resourceId\":\"dfead70e4ec5c11e43514000ced0cdcaf\",\"properties\":{\"process_id\":\"process4\",\"name\":\"\",\"documentation\":\"\",\"processformtemplate\":\"\"}}";
 String tmp = StringEscapeUtils.unescapeJavaScript(str1);
 System.out.println("tmp:" + tmp);
 }

輸出:

tmp:{"resourceId":"51ad70e41c5c11e88514000c290cdcfa","properties":{"process_id":"process4","name":"","documentation":"","processformtemplate":""}}

以上是“json串反轉(zhuǎn)義的示例分析”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI