我需要一个Java JSON解析器,它不会尝试解析属性值。我们有一个单独的模式,稍后将会应用,我不希望解析器做出任何假设。例如,
{ fred : "5" }
应解析为
{ fred : 5 }
如果架构说fred是一个整数。我想避免一个两步过程,其中解析器假设模式稍后更正。理想情况下,我只想要为值返回原始令牌。
我可以编写解析器,但如果存在,我更愿意使用现有的维护项目。
答案 0 :(得分:1)
您可以使用Object执行此操作:
Object name = (Object) jsonObject.get("fred");
答案 1 :(得分:0)
不确定这样的解析器是否在那里,但我认为你肯定可以构建一个。我假设数据是JSONObject而不是JSONArray,但这个想法可以肯定地扩展。
创建输入的JSONObject,使用keys()函数获取键的枚举,循环它(在循环之前初始化一个空的JSONObject),使用get()方法并输入caste it到java.lang .Object,然后在你正在制作的另一个JSONObject上使用put(,)方法。
这样的东西应该得到你想要的东西。