用Jedis獲取Json字符串時候遇到的一個坑

記錄以下今天下午遇到的一個坑,一下午時間全花在這個問題上了。。。

在用Jedis從redis中獲取到Json字符串後要將它反序列化爲對象。結果拋出了異常。第一個懷疑是這個Json字符串是不是格式有問題,我將這個Json字符串在控制檯打印出來放到格式化的網站上,結果沒問題。

打印出來的字符串如下:
在這裏插入圖片描述
又懷疑是不是fastJson有bug,換成Jackson去解析,還是不行。。。
經過無數次的debug,突然發現了一個問題:
在這裏插入圖片描述
這字符串首尾多了一對引號
用substring將首尾引號去掉後再次啓動,還是解析不了。
這時候我靈光一閃,突然想到,我們平時在字符串中的

\"

在控制檯上只會打印出"
而現在我的控制檯能打印出\"
這說明什麼???說明\"前面還有\\啊!!!
於是我再次將字符串中的\\全部替換爲空字符串,這回終於成功了。
撒花

總結
1.將首尾的"去掉
2.用replace將\\替換爲空串

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章