如何使用 Java 中的 Jackson 获取 JSONParser 默认设置?
javajsonobject oriented programmingprogramming
可以使用 JsonParser.Feature 枚举 表示 JSON Parser 的所有默认设置。JsonParser.Feature.values() 将返回 JSONParser 可用的所有功能,但可以使用 JsonParser 的 isEnabled() 方法确定某个功能对于特定解析器是启用 还是禁用 。
语法
public static enum JsonParser.Feature extends Enum<JsonParser.Feature>
示例
import com.fasterxml.jackson.core.*; import java.io.*; public class JsonParserSettingsTest { public static void main(String[] args) throws IOException { String json = "[{\"name\":\"Adithya\", \"age\":\"30\"}," + "{\"name\":\"Ravi\", \"age\":\"35\"}]"; JsonFactory jsonFactory = new JsonFactory(); JsonParser jsonParser = jsonFactory.createParser(json); for(JsonParser.Feature feature : JsonParser.Feature.values()) { System.out.println(feature.name() + ":" + jsonParser.isEnabled(feature)); } } }
输出
AUTO_CLOSE_SOURCE:true ALLOW_COMMENTS:false ALLOW_YAML_COMMENTS:false ALLOW_UNQUOTED_FIELD_NAMES:false ALLOW_SINGLE_QUOTES:false ALLOW_UNQUOTED_CONTROL_CHARS:false ALLOW_BACKSLASH_ESCAPING_ANY_CHARACTER:false ALLOW_NUMERIC_LEADING_ZEROS:false ALLOW_NON_NUMERIC_NUMBERS:false ALLOW_MISSING_VALUES:false ALLOW_TRAILING_COMMA:false STRICT_DUPLICATE_DETECTION:false IGNORE_UNDEFINED:false INCLUDE_SOURCE_IN_LOCATION:true