首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何使用纯Java代码读取JSON字符串(不使用任何Jar文件)

使用纯Java代码读取JSON字符串可以通过Java内置的JSON库来实现。以下是一个示例代码:

代码语言:txt
复制
import java.util.HashMap;
import java.util.Map;

public class JsonParser {

    public static void main(String[] args) {
        String jsonString = "{\"name\":\"John\", \"age\":30, \"city\":\"New York\"}";

        Map<String, Object> jsonMap = parseJson(jsonString);
        System.out.println(jsonMap);
    }

    public static Map<String, Object> parseJson(String jsonString) {
        Map<String, Object> jsonMap = new HashMap<>();

        // 去除首尾的花括号
        jsonString = jsonString.substring(1, jsonString.length() - 1);

        // 按逗号分隔键值对
        String[] keyValuePairs = jsonString.split(",");

        for (String pair : keyValuePairs) {
            // 按冒号分隔键和值
            String[] keyValue = pair.split(":");

            // 去除键和值的引号
            String key = keyValue[0].replaceAll("\"", "").trim();
            String value = keyValue[1].replaceAll("\"", "").trim();

            // 判断值的类型并存入Map
            if (value.matches("\\d+")) {
                jsonMap.put(key, Integer.parseInt(value));
            } else {
                jsonMap.put(key, value);
            }
        }

        return jsonMap;
    }
}

上述代码中,我们首先定义了一个parseJson方法,该方法接收一个JSON字符串作为参数,并返回一个Map对象,用于存储解析后的键值对。然后,在main方法中,我们定义了一个JSON字符串,并调用parseJson方法进行解析,并将解析结果打印输出。

parseJson方法中,我们首先去除了JSON字符串首尾的花括号,然后按逗号分隔键值对。接着,我们再按冒号分隔键和值,并去除键和值的引号。最后,我们判断值的类型,如果是数字,则转换为整数类型存入Map,否则直接存入Map

这样,我们就可以通过纯Java代码读取JSON字符串了。当然,这只是一个简单的示例,实际应用中可能需要处理更复杂的JSON结构。如果需要更强大的JSON解析功能,可以考虑使用第三方的JSON库,如Jackson、Gson等。

腾讯云相关产品和产品介绍链接地址:

  • 云函数(Serverless):https://cloud.tencent.com/product/scf
  • 云数据库 MySQL 版:https://cloud.tencent.com/product/cdb
  • 云服务器(CVM):https://cloud.tencent.com/product/cvm
  • 人工智能平台(AI Lab):https://cloud.tencent.com/product/ai
  • 云存储(COS):https://cloud.tencent.com/product/cos
  • 区块链服务(TBC):https://cloud.tencent.com/product/tbc
  • 腾讯云元宇宙:https://cloud.tencent.com/solution/virtual-universe
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

17分43秒

MetPy气象编程Python库处理数据及可视化新属性预览

领券