标签: json-simple

Java中的Pretty-Print JSON

我正在使用,我需要漂亮地打印JSON数据(使其更具人性化).

我无法在该库中找到此功能.这通常是如何实现的?

java json pretty-print json-simple

191
推荐指数
14
解决办法
19万
查看次数

如何使用简单的JSON库将json文件读入java

我想JSON用java使用json简单库来读取这个文件.

我的JSON文件看起来像这样:

[  
    {  
        "name":"John",
        "city":"Berlin",
        "cars":[  
            "audi",
            "bmw"
        ],
        "job":"Teacher"
    },
    {  
        "name":"Mark",
        "city":"Oslo",
        "cars":[  
            "VW",
            "Toyata"
        ],
        "job":"Doctor"
    }
]
Run Code Online (Sandbox Code Playgroud)

这是我为阅读此文件而编写的java代码:

package javaapplication1;
import java.io.FileNotFoundException;
import java.io.FileReader;
import java.io.IOException;
import java.util.Iterator;
import org.json.simple.JSONArray;
import org.json.simple.JSONObject;
import org.json.simple.parser.JSONParser;
import org.json.simple.parser.ParseException;

public class JavaApplication1 {
    public static void main(String[] args) {

        JSONParser parser = new JSONParser();

        try {     
            Object obj = parser.parse(new FileReader("c:\\file.json"));

            JSONObject jsonObject =  (JSONObject) obj;

            String name = (String) jsonObject.get("name");
            System.out.println(name);

            String city …
Run Code Online (Sandbox Code Playgroud)

java parsing json json-simple

80
推荐指数
8
解决办法
49万
查看次数

如何在Java中用JSON-string查找指定的名称及其值?

假设我们有下一个JSON字符串:

{  
   "name" : "John",
   "age" : "20",
   "address" : "some address",
   "someobject" : {
       "field" : "value"    
   }
}
Run Code Online (Sandbox Code Playgroud)

什么是最简单的(但仍然是正确的,即正则表达式是不可接受的)查找字段age及其值的方法(或确定没有给定名称的字段)?

ps任何开源库都可以.

ps2:拜托,不要发布图书馆的链接 - 这不是一个有用的答案.'给我看代码'(c).

java json gson json-simple

31
推荐指数
3
解决办法
12万
查看次数

27
推荐指数
1
解决办法
4万
查看次数

在json中简单地从root中迭代JSONObject

我试图使用json simple迭代json对象.我已经看到了你可以从中做一个getJSONObject("child")的答案

{ "child": { "something": "value", "something2": "value" } }
Run Code Online (Sandbox Code Playgroud)

但如果我有什么东西呢?

{
"k1":"v1",
"k2":"v2",
"k3":"v3"
} 
Run Code Online (Sandbox Code Playgroud)

并希望迭代该json对象.这个:

Iterator iter = jObj.keys();
Run Code Online (Sandbox Code Playgroud)

throws:找不到符号符号:方法keys()location:class org.json.simple.JSONObject

java json json-simple

23
推荐指数
2
解决办法
7万
查看次数

用Java解码JSON字符串

我是Java中使用json-simple库的新手,我已经完成了编码解码示例.复制编码示例很好,但是我无法使用混合类型JSON来解码.

我的一个问题是库中有太多的类没有正确记录,而且我没有源(为了能够阅读并理解它们的用途).因此,我很难理解如何使用这些类.

看完这个例子后:

String jsonText = "{\"first\": 123, \"second\": [4, 5, 6], \"third\": 789}";
JSONParser parser = new JSONParser();

ContainerFactory containerFactory = new ContainerFactory(){
    public List creatArrayContainer() {
        return new LinkedList();
    }

    public Map createObjectContainer() {
        return new LinkedHashMap();
    }                     
};

try {
    Map json = (Map)parser.parse(jsonText, containerFactory);
    Iterator iter = json.entrySet().iterator();
    System.out.println("==iterate result==");

    while(iter.hasNext()) {
        Map.Entry entry = (Map.Entry)iter.next();
        System.out.println(entry.getKey() + "=>" + entry.getValue());
    }

    System.out.println("==toJSONString()==");
    System.out.println(JSONValue.toJSONString(json));
} catch(ParseException pe) {
    System.out.println(pe);
}
Run Code Online (Sandbox Code Playgroud)

json简单的官方解码教程 …

java json json-simple

17
推荐指数
1
解决办法
9万
查看次数

添加JSON包参考; Java新手

我是Java的新手,并且一直很善良.话虽这么说,我正在尝试使用JSON库(包?类?Java术语真令人困惑!)并且在添加它们作为参考时遇到了问题.

这三个导入无法解决:

import org.json.simple.JSONArray;

import org.json.simple.JSONObject;

import org.json.simple.JSONValue;
Run Code Online (Sandbox Code Playgroud)

我去了json.org并下载了Java库,但我不知道如何处理它们.我试图进入项目属性并添加外部类无济于事.我注意到下载的文件夹里装满了.java文件.我应该怎么做这些?

很抱歉在这里提出这样一个菜鸟问题,但我很难过.

java eclipse json json-simple

13
推荐指数
3
解决办法
7万
查看次数

如何将JSONObject强制转换为自定义Java类?

在Java中(使用json-simple)我已成功解析了使用JSON.stringify在JavaScript中创建的JSON字符串.它看起来像这样:

{"teq":14567,"ver":1,"rev":1234,"cop":15678}
Run Code Online (Sandbox Code Playgroud)

该字符串存储自定义JavaScript对象的状态,我现在希望将其重新构成纯Java类.它不顺利 - 首次涉足来自C#背景的Java.:-P

该对象目前采用org.json.simple.JSONObject的形式,因为这是json-simple从JSONParser.parse()操作生成的.

如何将此JSONObject强制转换为新的Java类?(其定义如下......)

public class MyCustomJSObject {
    public int teq;
    public int ver;
    public int rev;
    public int cop;
}
Run Code Online (Sandbox Code Playgroud)

java json-simple

13
推荐指数
3
解决办法
4万
查看次数

错误JSON.simple:java.util.zip.ZipException:重复条目:org/hamcrest/BaseDescription.class

在添加JSON.simple并启用MultiDex并获得以下错误后,我在android studio中遇到问题:

错误:任务':app:packageAllDebugClassesForMultiDex'的执行失败.java.util.zip.ZipException:重复条目:org/hamcrest/BaseDescription.class

这是我的build.gradle:

apply plugin: 'com.android.application'

android {
compileSdkVersion 23
buildToolsVersion "23.0.1"

defaultConfig {
    applicationId "com.MildlyGoodApps.EffortlessDescriptions"
    minSdkVersion 10
    targetSdkVersion 23
    versionCode 1
    versionName "1.0"
    multiDexEnabled true

    }
    buildTypes {
        release {
        minifyEnabled false
        proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
    }
}
}

dependencies {
compile fileTree(include: ['*.jar'], dir: 'libs')
compile 'com.android.support:appcompat-v7:23.0.1'
compile 'com.googlecode.json-simple:json-simple:1.1.1'
compile 'com.android.support:multidex:1.0.0'
}
Run Code Online (Sandbox Code Playgroud)

谢谢.

固定:

compile 'com.googlecode.json-simple:json-simple:1.1.1'compile('com.googlecode.json-simple:json-simple:1.1.1'){ exclude group: 'org.hamcrest', module: 'hamcrest-core' }.

谢谢Kane O'Riley!

android build gradle json-simple android-gradle-plugin

10
推荐指数
1
解决办法
5173
查看次数

如何使用JSON-simple(Java)判断返回是JSONObject还是JSONArray?

我正在寻求服务,有时会得到这样的东西:

{ "param1": "value1", "param2": "value2" }
Run Code Online (Sandbox Code Playgroud)

有时会像这样得到回报:

[{ "param1": "value1", "param2": "value2" },{ "param1": "value1", "param2": "value2" }]
Run Code Online (Sandbox Code Playgroud)

我怎么知道我得到了什么?当我执行getClass()时,它们都评估为String但是如果我尝试这样做:

json = (JSONObject) new JSONParser().parse(result); 
Run Code Online (Sandbox Code Playgroud)

在第二种情况下,我得到一个例外

org.json.simple.JSONArray cannot be cast to org.json.simple.JSONObject
Run Code Online (Sandbox Code Playgroud)

怎么避免这个?我想知道如何检查我要回来的.(第一种情况有时会[]在其中,所以我不能做索引,我想要一个更清洁的方式,而不仅仅是检查第一个字符.

必须有某种方法来检查这个?

java json types json-simple

9
推荐指数
1
解决办法
8828
查看次数