JSON Parser-এর সব ডিফল্ট সেটিংস JsonParser.Feature এনামারেশন দিয়ে রিপ্রেজেন্ট করা হয়। 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
প্রধান ফিচার ব্যাখ্যা
| ফিচার | ডিফল্ট | ব্যাখ্যা |
|---|---|---|
| AUTO_CLOSE_SOURCE | true | পার্সিং শেষে ইনপুট সোর্স বন্ধ করুন |
| ALLOW_COMMENTS | false | JSON-এ কমেন্ট (//, / * * /) অনুমতি |
| ALLOW_UNQUOTED_FIELD_NAMES | false | কোটেশন ছাড়া ফিল্ড নাম অনুমতি ({name:"value"}) |
| ALLOW_SINGLE_QUOTES | false | সিঙ্গেল কোটেশন ব্যবহার অনুমতি |
| ALLOW_TRAILING_COMMA | false | লাস্ট এলিমেন্টের পর কমা অনুমতি ([1,2,]) |
| STRICT_DUPLICATE_DETECTION | false | ডুপ্লিকেট ফিল্ড ডিটেক্ট করুন |
ফিচার ইনএবল/ডিসএবল
JsonFactory factory = new JsonFactory();
factory.enable(JsonParser.Feature.ALLOW_COMMENTS);
factory.disable(JsonParser.Feature.AUTO_CLOSE_SOURCE);
JsonParser parser = factory.createParser(jsonString);