json標准格式
⑴ 求助,不是標准格式的json解析的問題
把您的JSON發出來,我先看看,不標准到什麼程度版。
標准JSON格式權化:
http://www.sojson.com/
⑵ 怎麼從這段數據中提取出來裡面的ID,NAME,還有Num呢 不是標準的JSON格式 操作的時候會出錯。
不是標準的就直接用正則表達式解析,如果標準的話就直接用JSON解析。
⑶ Json對象和Json字元串的區別
JSON字元串與JSON對象的區別
Q:什麼是"JSON字元串",什麼是"JSON對象",兩者的區別?
a.JSON對象是直接可以使用JQuery操作的格式,如C#中可以用對象(類名)點出屬性(方法)一樣
b.JSON字元串僅僅只是一個字元串,一個整體,不截取的話沒辦法取出其中存儲的數據,不能直接使用,除非你只想alert()他;
JSON對象:
var str2 = { "name": "deluyi", "sex": "man" };
JSON字元串:
var str1 = '{ "name": "deyuyi", "sex": "man" }';
Q:將"JSON字元串"轉化為"JSON對象"的方法?
一:使用$.parseJSON(str)
//由JSON字元串轉換為JSON對象
var str='{ "name": "John" }';
var obj = jQuery.parseJSON(str)
alert("1"+ obj.name);
ps:此種方式僅支持標准格式:var str='{ "name": "John" }';
二:JSON.parse(str)
var str = '{ "name": "mady", "age": "24" }';
var obj = JSON.parse(str);
alert(obj.name);
ps:此種方式僅支持標准格式:var str='{ "name": "John" }';
三:使用eval('('+str+')');
以上均會輸出結果「john」。
Eval方式可以轉換以下標准和非標准格式字元串:
var str="{ 'name': 'John' }";
var str2='{ "name": "John" }';
var str3="{ name: 'John' }";
Q:將"JSON對象"轉化為"JSON字元串"的方法?
一:使用全局方法JSON.stringify()與toJSONString()
例如:
var last=obj.toJSONString(); //將JSON對象轉化為JSON字元
或者
var last=JSON.stringify(obj); //將JSON對象轉化為JSON字元
alert(last);
Q:讀取JSON對象的方法?
如上面的例子:
var str2 = { "name": "mady", "sex": "man" };
就可以這樣讀取:
alert(str2.name);//和C#一樣直接往出點…
彈出」 mady」。
我們遇到的JSON很少有這么簡單的,比如復雜一點的JSON對象如:
var str={"GetUserPostByIdResult":{"Age":"33","ID":"2server","Name":"mady"}};
解析用:
alert(str.GetUserPostByIdResult.Name);//一次點不出來,我多點幾次
彈出:」mady」。
⑷ 求助,不是標准格式的json解析的問題
「()」小括弧 「[]」 中括弧 「{}」大括弧 這是我對括弧的定義。
然後小括弧是數組,大括弧是字典,還有就是如果需要適配多種情況的話,可以先用id接收,然後根據情況判斷 !
⑸ 如何用jackson解析含有轉義字元的字元串,為標准格式的json字元串
使用如下代碼
objectMapper.configure(Feature.ALLOW_UNQUOTED_CONTROL_CHARS, true) ;
⑹ 如何用jackson解析含有轉義字元的字元串,為標准格式的json字元串
做成員變數(欄位/屬性/類變數)時, 如果只寫String str;那麼是默認賦值為null的。回 做局部變數(方答法里的變數)時,如果只寫String str;是不會默認賦值null的,這里僅聲明了一個str變數,在棧內存中有定義,但沒有任何值,null其實也是一種值
⑺ json對象和json字元串的區別詳解
JSON字元串與對象的區別
Q:什麼是"JSON字元串",什麼是"JSON對象",兩者的區別?
a.JSON對象是直接可以使用JQuery操作的格式,如C#中可以用對象(類名)點出屬性(方法)一樣b.JSON字元串僅僅只是一個字元串,一個整體,不截取的話沒辦法取出其中存儲的數據,不能直接使用,除非你只想alert()他;
JSON對象:
var str2 = { "name": "deluyi", "sex": "man" };
JSON字元串:
var str1 = '{ "name": "deyuyi", "sex": "man" }';
Q:將"JSON字元串"轉化為"JSON對象"的方法?
一:使用$.parseJSON(str)
//由JSON字元串轉換為JSON對象var str='{ "name": "John" }';var obj = jQuery.parseJSON(str)alert("1"+ obj.name);
ps:此種方式僅支持標准格式:var str='{ "name": "John" }';二:JSON.parse(str)
var str = '{ "name": "mady", "age": "24" }';var obj = JSON.parse(str);alert(obj.name);
ps:此種方式僅支持標准格式:var str='{ "name": "John" }';
三:使用eval('('+str+')');
以上均會輸出結果「john」。
Eval方式可以轉換以下標准和非標准格式字元串:
var str="{ 'name': 'John' }";var str2='{ "name": "John" }';var str3="{ name: 'John' }";
Q:將"JSON對象"轉化為"JSON字元串"的方法?
一:使用全局方法JSON.stringify()與toJSONString()
例如:
var last=obj.toJSONString(); //將JSON對象轉化為JSON字元
或者
var last=JSON.stringify(obj); //將JSON對象轉化為JSON字元
alert(last);
Q:讀取JSON對象的方法?
如上面的例子:
var str2 = { "name": "mady", "sex": "man" };
就可以這樣讀取:
alert(str2.name);//和C#一樣直接往出點…
彈出」 mady」。
我們遇到的JSON很少有這么簡單的,比如復雜一點的JSON對象如:
var str={"GetUserPostByIdResult":{"Age":"33","ID":"2server","Name":"mady"}};
解析用:
alert(str.GetUserPostByIdResult.Name);//一次點不出來,我多點幾次
彈出:」mady」。
⑻ 關於JSON 中元素屬性(或者說格式標准)的問題
vartemp=你上面的json數據;
temp[1]="Ajaxnode";
temp中有兩個對象,{}是一個對象,"Ajaxnode"是另一個對象,對象的形式可以是任意的
⑼ 如何把類似json格式的字元串處理成標準的json
JSON.parse(jsonStr)
⑽ 如何用jackson解析含有轉義字元的字元串,為標准格式的json字元串
使用JSON從後台向前台傳輸數據的時候,當數據本身含有一些特殊字元,會導致JSON數據的解析出錯。
使用下面的方法對即將向前台輸出的json字元串進行處理,可以解決鍵盤上能輸入的所有特殊字元問題。
//當文本中含有如下特殊字元時,此方法可以成功處理,讓其在前台被正確解析,注意:此法不能處理單引號
public static String stringToJson(String s) {
StringBuffer sb = new StringBuffer ();
for (int i=0; i<s.length(); i++) {
char c = s.charAt(i);
switch (c) {
case '\"':
sb.append("\\\"");
break;
// case '\\': //如果不處理單引號,可以釋放此段代碼,若結合下面的方法處理單引號就必須注釋掉該段代碼
// sb.append("\\\\");
// break;
case '/':
sb.append("\\/");
break;
case '\b': //退格
sb.append("\\b");
break;
case '\f': //走紙換頁
sb.append("\\f");
break;
case '\n':
sb.append("\\n"); //換行
break;
case '\r': //回車
sb.append("\\r");
break;
case '\t': //橫向跳格
sb.append("\\t");
break;
default:
sb.append(c);
}}
return sb.toString();
}
//注意,下面的方法是在把你的數據文本接入json數據字元串之前使用,預先對文本做處理後在接入JSON字元串
//處理文本中的單引號 和 斜杠
public static String StringDanYinToJSON(String ors) {
ors = ors == null ? "" : ors;
StringBuffer buffer = new StringBuffer(ors);
int i = 0;
while (i < buffer.length()) {
if (buffer.charAt(i) == '\'' || buffer.charAt(i) == '\\') {
buffer.insert(i, '\\');
i += 2;
} else {
i++;
}
}
return buffer.toString();
}