Articles of json

检查JSONArray的具体值

在我的Android Activity中,我通过HTTP包含用户名来获取JSONArray。 Array看起来像这样: [{“username”:”Julia”},{“username”:”Anja”},{“username”:”Hans”},{“username”:”Sophia”},{“username”:”Sarah”}] 如果给定的用户名已存在,我想检查Android Activity。 最有效的方法是什么? 或者我必须迭代整个数组?

如何在Java中创建嵌套的Json对象?

我想为我的Android设备编写嵌套的JSON对象,但是如何? 我只有Json的基本经验,所以如果有人可以帮助我使用以下代码,我将不胜感激: { “command”: “login”, “uid”: “123123123”, “params”: { “username”: “sup”, “password”: “bros” } } 编辑: 以下代码确实解决了这个问题: loginInformation = new ArrayList(); JSONObject parentData = new JSONObject(); JSONObject childData = new JSONObject(); try { parentData.put(“command”, “login”); parentData.put(“uid”, UID.getDeviceId()); childData.put(“username”, username.getText().toString()); childData.put(“password”, password.getText().toString()); parentData.put(“params”, childData); } catch (JSONException e) { e.printStackTrace(); } loginInformation.add(new BasicNameValuePair(“content”, parentData.toString()));

如何在更新时保持listview的滚动位置

我已经阅读了很多例子,但是如果我希望在从JSON更新ListView之后保持我的滚动位置,那么我可以不使用AsyncTask实例吗? 我的清单的代码是 String wrd; //ArrayList<HashMap> mylist; @Override public void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.main); Intent i2=getIntent(); wrd=i2.getStringExtra(“entrd”); Log.v(“keyis”,wrd); final Handler handler = new Handler(); Runnable runable = new Runnable() { @Override public void run() { //call the function LoadData(); //also call the same runnable handler.postDelayed(this, 40000); } }; handler.postDelayed(runable, 10); […]

如何对JSON解析进行unit testing

我正在开发一个Android应用程序,在其中我从Web服务下载JSON数据。 解析数据的类看起来像这样: public class JsonCourseParser implements CourseParser { public Course parseCourse(String courseData) { Course result; try { JSONObject jsonObject = new JSONObject(courseData); … result = new Course(“foo”, “bar”); } catch (JSONException e) { result = null; } return result; } } 这构建得很好,当我从我的应用程序中调用parseCourse()时它可以工作,但是当我尝试在unit testing中测试这个方法时,我得到了这个exception: java.lang.NoClassDefFoundError: org/json/JSONException at JsonCourseParserTest.initClass(JsonCourseParserTest.java:15) at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method) at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39) at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25) at […]

如何测试JSONObject是否为空或不存在

美好的一天,我有一组JSONObject值,我从服务器收到并运行。 大多数情况下,我得到一个带有值的JSONObject(比方说统计),有时,它会返回一个带有代码和错误描述的Error对象。 现在我的问题是我如何构造我的代码,以便它不会中断,如果它返回错误。 我以为我可以做到这一点,但不起作用。 任何帮助将受到高度赞赏。 谢谢 public void processResult(JSONObject result) { try { if(result.getJSONObject(ERROR) != null ){ JSONObject error = result.getJSONObject(ERROR); String error_detail = error.getString(DESCRIPTION); if(!error_detail.equals(null)){ //show error login here finish(); } else { JSONObject info = result.getJSONObject(STATISTICS); String stats = info.getString(“production Stats”)); } }

如何解析Unirest调用的JSON结果

我正在使用Unirest库从Mashape API中检索JSON。 我使用以下代码进行调用: HttpResponse request = Unirest.get(URL) .header(“X-Mashape-Authorization”, MASHAPE_AUTH) .asJson(); 这将以HttpResponse的forms返回我的JSON,这是我不熟悉的。 从阅读有限的文档 ,似乎我必须在响应对象上调用getBody()以获取JsonNode对象。 我仍然不知道如何处理JsonNode对象。 开始解析这些数据的最佳方法是什么? 编辑:如果它有助于提供示例,我想要解析的JSON看起来像这样: { “success”: “1”, “error_number”: “”, “error_message”: “”, “results”: [ { “name”: “name1”, “formatedName”: “Name 1” }, { “name”: “testtesttest”, “formatedName”: “Test Test Test” }, { “name”: “nametest2”, “formatedName”: “Name Test 2” }, { “name”: “nametest3”, “formatedName”: “Name Test 3” […]

android – 在adb logcat输出中格式化json字符串

为了记录目的,我打印出json响应字符串,可以在android“adb logcat”命令中看到它们。 有没有办法在adb logcat输出中很好地格式化json字符串,使它看起来像这样? { “code” : “0”, “text” : “hello world” }

如何在JSON对象中添加字符串数组?

我试图在android上创建这个JSON对象。 我被困在如何在对象中添加字符串数组。 A = { “class” : “4” , “name” : [“john”, “mat”, “jason”, “matthew”] } 这是我写的代码: import org.json.JSONObject; JSONObject school = new JSONObject(); school.put(“class”,”4″); school.put(“name”, [“john”, “mat”, “jason”, “matthew”] ); 但最后一行给出了错误。 过去了吗?

JSON Java检查元素是JSONArray或JSONObject

如何检查元素是JSONArray还是JSONObject。 我写了代码来检查, if(jsonObject.getJSONObject(“Category”).getClass().isArray()) { } else { } 在这种情况下,如果元素’category’是JSONObject,那么它工作正常,但如果它包含一个数组,那么它会抛出exception:JSONArray无法转换为JSONObject。 请帮忙。 谢谢。

Android如何排序JSONArray的JSONObjects

我制作了一个jsonobjects的jsonarray。 现在我需要根据jsonobjects中的值对JSONArray进行排序。 以前我对自定义对象的ArrayLists进行了排序,如下所示: 比较: public class KreeftenComparatorLA implements Comparator { public int compare(Kreeft left, Kreeft right) { return left.latijnseNaam.compareTo(right.latijnseNaam); } } public class KreeftenComparatorNL implements Comparator { public int compare(Kreeft left, Kreeft right) { return left.naam.compareTo(right.naam); } } 然后对arraylist进行排序: Collections.sort(db.lijst, new KreeftenComparatorLA()); 要么: Collections.sort(db.lijst, new KreeftenComparatorNL()); 但是当我像这样用JSONArray尝试同样的事情时(JA =我的jsonarray) Collections.sort(JA, new KreeftenComparatorNL()); Collections.sort给出错误: types集合中的方法sort(List,Comparator)不适用于参数(JSONArray,ThisActicity.KreeftenComparatorNL) 有人知道如何对JSONArray进行排序吗?