**后台怎么處理JSON數據中含有雙引號?


http://bbs.csdn.net/topics/390578406?page=1

 

注意是后台,不是用js
另外我這個json是直接取得別人的傳過來的字符串,不是我自己拼寫的,所以我自己不能做到轉義去拼接

如果針對

{"id":"FZ13082900190","type":"人口計生","title":"現在"新婚教育卡"在哪辦","time1":"13-08-29","time2":"08-29","from":"網站"}

這個我直接拿到的字符串,關鍵的就是紅色字體的

 

A:

這個需要源頭處理,找提供接口的人 讓他提供標准的JSON字符串給你不就行了·

這分明是未轉義bug,一個有錯誤的字符串拿來做正則更正?哪有這種道理?
常識上來說,造房子先選好適用的建材,然后組裝,哪里會是 造完了,再拆除壞掉設計不合理的建材這種思路?

應該是
內容->轉義->json

 

讓對方改,或者屏蔽雙引號

 

這個是對方的問題了!這樣提供的json格式本身就是錯誤的!!

 

---------------------------

自己寫個方法  把屬性值中的雙引號改成中文引號就可以了   

private static String jsonString(String s){
            char[] temp = s.toCharArray();        
            int n = temp.length;
            for(int i =0;i<n;i++){
                if(temp[i]==':'&&temp[i+1]=='"'){
                        for(int j =i+2;j<n;j++){
                            if(temp[j]=='"'){
                                if(temp[j+1]!=',' &&  temp[j+1]!='}'){
                                    temp[j]='”';
                                }else if(temp[j+1]==',' ||  temp[j+1]=='}'){
                                    break ;
                                }
                            }
                        }    
                }
            }        
            return new String(temp);
        }

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM