org.json包里面JSONObject.java文件中,定义了有关json object的所有方法。http://www.json.org/javadoc/org/json/JSONObject.html 其中,构造方法JSONObject()除把用户自定义的JSON字段加进去之外,还加入了"class":packagename一项。但是,当我们采用json数据格式进行传输时,通常不希望显示在web页面上。所以我们对其toString()方法进行改进。源代码如下:
修改之前:
while (keys.hasNext()) {
if (sb.length() > 1) {
sb.append(',');
}
Object o = keys.next();
sb.append(quote(o.toString()));
sb.append(':');
sb.append(valueToString(this.map.get(o)));
}
sb.append('}');
return sb.toString();
修改之后:
while (keys.hasNext()) {
Object o = keys.next();
if((!valueToString(this.map.get(o)).equals("null"))&&
(!o.toString().equals("class"))) {
if (sb.length() > 1) {
sb.append(',');
}
sb.append(quote(o.toString()));
sb.append(':');
sb.append(valueToString(this.map.get(o)));
}
}
sb.append('}');
return sb.toString();
已经测试成功。
修改之前:
while (keys.hasNext()) {
if (sb.length() > 1) {
sb.append(',');
}
Object o = keys.next();
sb.append(quote(o.toString()));
sb.append(':');
sb.append(valueToString(this.map.get(o)));
}
sb.append('}');
return sb.toString();
修改之后:
while (keys.hasNext()) {
Object o = keys.next();
if((!valueToString(this.map.get(o)).equals("null"))&&
(!o.toString().equals("class"))) {
if (sb.length() > 1) {
sb.append(',');
}
sb.append(quote(o.toString()));
sb.append(':');
sb.append(valueToString(this.map.get(o)));
}
}
sb.append('}');
return sb.toString();
已经测试成功。