1. 程式人生 > >Java xml和json互轉

Java xml和json互轉

Java xml和json相互轉換

1. maven依賴

<dependency>
    <groupId>org.json</groupId>
    <artifactId>json</artifactId>
    <version>20180813</version>
</dependency>

2. 使用示例

import org.json.JSONObject;
import org.json.XML;

/**
 * json xml互轉
 *
 * @author yh
 * @version 2019/6/11 上午 10:45
 */
public final class JsonXmlUtils {

    /**
     * json轉xml,無根節點
     *
     * @param json json字串
     * @return 無根節點的xml字串
     */
    public static String json2Xml(String json) {
        JSONObject jsonObject = new JSONObject(json);
        return XML.toString(jsonObject, null);
    }

    /**
     * json轉xml,並指定根節點
     *
     * @param json    json字串
     * @param tagName 根節點名稱
     * @return 帶根節點的xml字串
     */
    public static String json2Xml(String json, String tagName) {
        JSONObject jsonObject = new JSONObject(json);
        return XML.toString(jsonObject, tagName);
    }

    /**
     * xml轉json
     *
     * @param xml xml字串
     * @return json字串
     */
    public static String xml2Json(String xml) {
        return XML.toJSONObject(xml).toString();
    }

    /**
     * xml轉json,並進行格式化
     *
     * @param xml          xml字串
     * @param indentFactor 換行縮排空格數
     * @return 格式化的json字串
     */
    public static String xml2Json(String xml, int indentFactor) {
        return XML.toJSONObject(xml).toString(indentFactor);
    }

}