中文字幕av专区_日韩电影在线播放_精品国产精品久久一区免费式_av在线免费观看网站

溫馨提示×

溫馨提示×

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

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

如何解決java轉義json出現\u0000 等亂碼的問題

發布時間:2021-03-15 10:42:06 來源:億速云 閱讀:2140 作者:TREX 欄目:開發技術

這篇文章主要講解了“如何解決java轉義json出現\u0000 等亂碼的問題”,文中的講解內容簡單清晰,易于學習與理解,下面請大家跟著小編的思路慢慢深入,一起來研究和學習“如何解決java轉義json出現\u0000 等亂碼的問題”吧!

今天遇到了String亂碼怎么都去不了的問題,最后的解決方法很簡單,也不是方法的問題,是數據過濾之后進行的數據處理,在處理階段生成了亂碼,難怪我在過濾階段怎么去都去不掉- -,不過花時間知道了很多處理亂碼的方法,在這里記錄一下。

在將中文數據轉成json格式的時候,碰到了很多char型直接顯示出來的,比如\u0000, \u201d, \u201c

首先我想到的是我的數據篩選出現了問題,于是去修改了篩選的部分:

title = title.replaceAll("\\u0000","");

title = title.replaceAll("\u0000","");

首先是這種,利用String的replace和replaceAll方法去過濾,這也是大部分亂碼過濾的方法。

在這之后,我使用了直接循環處理char的方法,將String變成char型,然后一個一個判斷,雖然比較笨這個方法,但是也算一種吧,誰讓我菜呢。

之后我猜可能是編碼問題導致了亂碼,而現在不情況是只有個別字符串中出現了亂碼,大部分還是正確的,所以不存在編碼問題。

后來我是在想是不是String轉Json的時候出現了問題,于是,將spring自帶的json換成了阿里的fastjson,解決了部分的亂碼問題(\u201d, \u201c),但是\u0000這個東西就是去不掉。

google里有人說string轉json最好用list也不是string[]

https://stackoverflow.com/questions/36696090/how-to-use-gson-to-encode-string-array-data-into-json-properly

我的解決

最后,我試著在數據處理完成后再刪除\u0000, 結果成功,哎,感覺浪費了好幾個小時啊。

補充:Java 中各種空(''、\u0000、null)的區別?

在使用下面的SQL查詢時,發現去不掉空格,而且把limit 去掉以后空格就沒有了,琢磨了很久才發現問題的關鍵所在。

主要是\u0000在作怪!!!

select id,company_name,username,remarks,address from table_alldata where company_name !='' and remarks is null limit 1000;

結果是這樣的:

如何解決java轉義json出現\u0000 等亂碼的問題

回答:從class字節碼的角度來理解吧

1.String s1 = ""的情況,下面是編譯后的字節碼,可以看到,這種情況s1="aaa"其實沒什么區別的,都是從常量池推一個字符串到棧頂,并賦給本地變量。

2.String s2=null的情況,這個時候,并沒有在常量池中生成任何的字符串常量,僅僅是將null推送到棧頂賦值給變量。

3.String s3 = "u0000"的情況,會在常量池生成一個表示NUL的一個字符串,也就是所謂的Control Character。

如何解決java轉義json出現\u0000 等亂碼的問題

如何解決java轉義json出現\u0000 等亂碼的問題

如何解決java轉義json出現\u0000 等亂碼的問題

感謝各位的閱讀,以上就是“如何解決java轉義json出現\u0000 等亂碼的問題”的內容了,經過本文的學習后,相信大家對如何解決java轉義json出現\u0000 等亂碼的問題這一問題有了更深刻的體會,具體使用情況還需要大家實踐驗證。這里是億速云,小編將為大家推送更多相關知識點的文章,歡迎關注!

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

武陟县| 永兴县| 梓潼县| 策勒县| 和田县| 长寿区| 河南省| 平定县| 南岸区| 侯马市| 利川市| 辛集市| 嘉兴市| 翁源县| 杭锦后旗| 南澳县| 金堂县| 大城县| 江阴市| 海宁市| 宜阳县| 龙南县| 云霄县| 商水县| 平和县| 阿拉善盟| 大兴区| 台东县| 达州市| 乐陵市| 富锦市| 图木舒克市| 同德县| 上高县| 保定市| 红原县| 卫辉市| 桑日县| 黑龙江省| 青神县| 乐东|