2017-04-02 34 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; 

希望它会帮助你