我有以下代码,当我使用有效的JSON运行它时,它为fieldname返回null。 我这几个小时以来一直在摸不着头脑。
JsonFactory jFactory=new JsonFactory();
JsonParser parser=jFactory.createJsonParser(bytes);
while (parser.nextToken() != JsonToken.END_OBJECT) {
String field_name=parser.getCurrentName();
System.out.println("fieldName: "+field_name);
parser.nextToken();
if(field_name.equals("value")){
System.out.println("value found");
data=parser.getBinaryValue();
out.write(new String(data));
}//if
}//while
parser.close();
JSON示例:
{
"mimetype" : "text/plain",
"value" : "c2FzCg=="
}
答案 0 :(得分:2)
你快到了。您只需要在while结构之前使用nextToken
,以便跳过JsonToken.START_OBJECT
。
像这样:
parser.nextToken();
while (parser.nextToken() != JsonToken.END_OBJECT) {