程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> .NET網頁編程 >> C# >> C#入門知識 >> 解析毛病富文本json字符串(帶雙引號)的疾速處理辦法

解析毛病富文本json字符串(帶雙引號)的疾速處理辦法

編輯:C#入門知識

解析毛病富文本json字符串(帶雙引號)的疾速處理辦法。本站提示廣大學習愛好者:(解析毛病富文本json字符串(帶雙引號)的疾速處理辦法)文章只能為提供參考,不一定能成為您想要的結果。以下是解析毛病富文本json字符串(帶雙引號)的疾速處理辦法正文


公司的項目,經由過程json傳回來的是這麼個器械:

NewsId":"94f52614-8764-46d7-a5fe-d0da1fe878ed","NewsTitle":"年夜型公選課《可連續成長與將來》系列二之古代經濟(綠色經濟)開端網上選課報名","NewsContent":"<span ><span>近日,隨同著我校鄭時齡院士、童小華傳授分離在四平、嘉定舉辦的出色演講,本學期我校出力打造的年夜型公共選修課程《可連續成長與將來》之系列一曾經美滿停止。該課程也是我校</span>“<span>可連續成長輔修專業</span>”<span>的焦點?課程之一。</span></span> 
<p >
</p>.........
</span>

各類查詢以後發明沒法解析的基本緣由就是外面有雙引號" " "和反斜槓" \ ".

還不克不及直接對json停止本義,不然會將json自己自帶的雙引號都給本義了,所以不克不及暴力本義

上彀找的辦法:

//將壞的json數據外面的雙引號,改成中文的雙引號(啥都行,只需不是雙引號就行)
	public String jsonStringConvert(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);
  }</span>

此辦法能將json自己的雙引號之外的雙引號本義為中文的雙引號(其他甚麼都行)。如許就可以夠本義為准確的json字符串。

備忘:

在此辦法之前,還要將html代碼去空格,不然json也不克不及夠解析,去空格辦法:

public String replaceBlank(String str) {
		String dest = "";
	if (str != null) {
			Pattern p = Pattern.compile("\\s*|\t|\r|\n");
		Matcher m = p.matcher(str);
			dest = m.replaceAll("");
			// Pattern p2 = Pattern.compile("\\s*\"");
			// Matcher m2 = p2.matcher(dest);
			// dest = m2.replaceAll("\'");
			dest = dest.replace("=\"", "='");
			p = Pattern.compile("\"\0*>");
			m = p.matcher(dest);
			dest = m.replaceAll(">'");
		}
		return dest;
}</span>

以上這篇解析毛病富文本json字符串(帶雙引號)的疾速處理辦法就是小編分享給年夜家的全體內容了,願望能給年夜家一個參考,也願望年夜家多多支撐。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved