使用纯Java代码读取JSON字符串可以通过Java内置的JSON库来实现。以下是一个示例代码:
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等。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云