詳解json串反轉(zhuǎn)義(消除反斜杠)
JSon串在被串行化后保存在文件中,讀取字符串時,是不能直接拿來用JSON.parse()解析為JSON 對象的。因?yàn)樗且粋€字符串,不是一個合法的JSON對象格式。例如下面的JSON串保存在文件中,讀出來不能直接解析:
“{\"resourceId\":\"dfead70e4ec5c11e43514000ced0cdcaf\",\"properties\":{\"process_id\":\"process4\",\"name\":\"\",\"documentation\":\"\",\"processformtemplate\":\"\"}}"
這個串如果出現(xiàn)在代碼中是沒有問題的,因?yàn)榉葱备芫捅硎巨D(zhuǎn)義,但如果從文本文件中直接讀出來就是這個樣子,則不能直接用JSON.parse()進(jìn)行解析,需要反串行化,消除掉反斜杠。有些programmer喜歡自己寫一個工具類來做這樣的事情,但已經(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":""}}
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
JavaScript定時器setTimeout()和setInterval()詳解
這篇文章主要為大家詳細(xì)介紹了JavaScript定時器setTimeout()和setInterval()的相關(guān)資料,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-08-08JavaScript中雙等號(==)和三等號(===)有何不同以及何時使用它們詳解
這篇文章主要給大家介紹了關(guān)于JavaScript中雙等號(==)和三等號(===)有何不同以及何時使用它們的相關(guān)資料,在JavaScript中"=="和"==="都是比較運(yùn)算符,用于比較兩個值是否相等,需要的朋友可以參考下2024-01-01javascript 實(shí)現(xiàn) 秒殺,團(tuán)購 倒計(jì)時展示的記錄 分享
這篇文章介紹了javascript 實(shí)現(xiàn) 秒殺,團(tuán)購 倒計(jì)時展示的記錄方法,有需要的朋友可以參考一下2013-07-07javascript實(shí)現(xiàn)復(fù)制與粘貼操作實(shí)例
這篇文章主要介紹了javascript實(shí)現(xiàn)復(fù)制與粘貼操作,以實(shí)例形式講述了javascript實(shí)現(xiàn)復(fù)制與粘貼操作的實(shí)現(xiàn)方法,需要的朋友可以參考下2014-10-10JavaScript異步回調(diào)的Promise模式封裝實(shí)例
這篇文章主要介紹了JavaScript異步回調(diào)的Promise模式封裝實(shí)例,本文通過分析easyjs的源碼得出,實(shí)例均參考easyjs,需要的朋友可以參考下2014-06-06使用jscript實(shí)現(xiàn)二進(jìn)制讀寫腳本代碼
Reading And Writing Binary Files Using JScript正如我剛才推什么我能做的JScript中,我想出了對問題的二進(jìn)制文件。以下級的解決,這為小到中等大小的文件。我的部分包括這個職位在這里,因?yàn)槲壹磳⒏吨T表決,在一個職位約發(fā)送帶有附件的電郵通過JScript和它會使用這個二進(jìn)制文件碼來讀取,在二進(jìn)制附件檔案。2008-06-06js 計(jì)數(shù)排序的實(shí)現(xiàn)示例(升級版)
這篇文章主要介紹了js 計(jì)數(shù)排序的實(shí)現(xiàn)示例(升級版),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2020-01-01