optType也是将要获取的键的值转换为指定的类型,无法转换或没有值时返回用户提供或这默认提供的值
代码:
?
- try { // 所有使用的对象都是用上面创建的对象
- // 将第一个电话号码转换为数值和将名字转换为数值 phone.getLong(0);
- person.getLong("name"); // 会抛异常,因为名字无法转换为long phone.optLong(0); // 代码内置的默认值
- phone.optLong(0, 1000); // 用户提供的默认值 person.optLong("name");
- person.optLong("name", 1000); // 不像上面那样抛异常,而是返回1000 } catch (JSONException ex) {
- // 异常处理代码 }
除了上面的两个类,还可以使用JSONStringer来构建json文本
Java代码:
- try { JSONStringer jsonText = new JSONStringer();
- // 首先是{,对象开始。object和endObject必须配对使用 jsonText.object();
- jsonText.key("phone"); // 键phone的值是数组。array和endArray必须配对使用
- jsonText.array(); jsonText.value("12345678").value("87654321");
- jsonText.endArray(); jsonText.key("name");
- jsonText.value("yuanzhifei89"); jsonText.key("age");
- jsonText.value(100); jsonText.key("address");
- // 键address的值是对象 jsonText.object();
- jsonText.key("country"); jsonText.value("china");
- jsonText.key("province"); jsonText.value("jiangsu");










