2017-04-02 128 views
1

獲取JSON我有一個JSON字符串,它看起來像:從misformatted JSON字符串

data: { "type": "add", 
"newsId": "5da979e0-161d-11e7-9e14-bd201bbe920c", 
"articleId": "null", 
"category": "news", 
"timestamp": "1490970103941", 
"id": "5daa8b50-161d-11e7-9e14-bd201bbe920c"} 

我創建POJO解析使用GSON此JSON。

public class SSENewsEvent { 

    private String type; 

    private String newsId; 

    private String articleId; 

    private String category; 

    private String timestamp; 

    private String id; 
} 

但是,正如你所看到的,它不能被解析,因爲它是由這個

data: 

在字符串的開頭莫名其妙misformatted。你能幫我找到解析這個字符串的最佳方法嗎?

+1

的JSON字符串應該以'{'開頭,檢查第一個字符是否是字符串中的{{},否則在開始時加一個'{'並在結尾加'}'?這會爲你工作嗎? –

+0

我已經在字符串的開始和結尾添加了這個大括號,但它並沒有成功。試試看,json解析在線工具表示json已損壞。 –

+0

假設您需要substring()json字符串並使用json {} –

回答

0

有一個在JSON字符串中的語法錯誤的JSON字符串應該是這樣的

{ 
    "data": 
    { 
     "type": "add", 
     "newsId": "5da979e0-161d-11e7-9e14-bd201bbe920c", 
     "articleId": "null", 
     "category": "news", 
     "timestamp": "1490970103941", 
     "id": "5daa8b50-161d-11e7-9e14-bd201bbe920c" 
    } 
} 
0

您可以按照這種方式:

myObj = { 
    "type": "add", 
    "newsId": "5da979e0-161d-11e7-9e14-bd201bbe920c", 
    "articleId": "null", 
    "category": "news", 
    "timestamp": "1490970103941", 
    "id": "5daa8b50-161d-11e7-9e14-bd201bbe920c" 
} 
var type = myObj.type; 
var newsId= myObj.newsId; 
var articleId=myObj.articleId; 
var category= myObj.category; 
var timestamp= myObj.timestamp; 
var id=myObj.id; 

希望它會幫助你