java : create nested json object from String

标签 java json

我想从字符串创建org.json.JSONObject。 该字符串为“user.phone.num:00113”。我想要的结果是具有以下格式的 org.json.JSONObject 对象:

{
user: 
     { 
       phone:  {num: 00113}
     }
}

有没有内置方法可以实现这个结果。谢谢。

最佳答案

如果你的 json 的每一行都被分割了,你可以尝试这个代码

import org.json.JSONException;
import org.json.JSONObject;

/**
 * Created by ebi on 7/3/17.
 */
public class Main {
    public static void main(String[] args) throws JSONException {

        String str = "user.phone.num : 00113";
        String json_str = str_to_json(str);
        JSONObject jsonObject = new JSONObject(json_str);
        System.out.println(jsonObject);
    }

    public static String str_to_json(String jsonByDot){
        int valOffset = jsonByDot.indexOf(":");
        String keys = jsonByDot.substring(0,valOffset).trim();
        String val = jsonByDot.substring(valOffset+1).trim();

        String keysArr[] = keys.split("\\.");
        String output = "";
        for(String key:keysArr){
            output+="{"+key+":";
        }
        output+=val;
        for (int i = 0 ;i<keysArr.length;i++){
            output+="}";
        }

        return  output;
    }
}

关于java : create nested json object from String,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44883995/

相关文章:

android - 无法将 JSON 对象插入 Firebase 实时数据库

wss :binding? 的 Java 配置对应项

java - 如何在我的应用程序中查找电池泄漏?

java - 在 MS Access 数据库中插入一行

java - 如何检查 jar 文件依赖性

php - 获取触发 "Failed calling MyClass::jsonSerialize()"异常的异常

javascript - JS - 构造函数中的 JSON/ARRAY 传递变量(自定义库)

java - Java中OutputStream中的String中的引号问题

java.net.ConnectException异常

java - 从 Hibernate 反序列化 JSON