Анализ строки JSON в android

Разбор JSON кажется довольно частой темой для обсуждения здесь. Я осмотрелся и все еще не нашел то, что искал. Вот мой код для моего HttpClient

public class CreateJsonRequest {


    public static String SendJsonRequest(String URL, Map<String,Object> params){
            try{
                DefaultHttpClient httpClient = new DefaultHttpClient();
                HttpPost httpPost = new HttpPost(URL);

                JSONObject holder = new JSONObject();

                for (Map.Entry<String, Object> m : params.entrySet()){
                    try {
                        holder.put(m.getKey(), m.getValue());
                    }
                    catch (JSONException e) {
                        Log.e("Hmmmm", "JSONException : "+e);
                    }
                }   
                StringEntity se;
                se = new StringEntity(holder.toString());

                httpPost.setEntity(se);
                httpPost.setHeader("Accept", "text/json");
                httpPost.setHeader("Content-type", "text/json");

                HttpResponse response = httpClient.execute(httpPost);
                HttpEntity entity = response.getEntity();

                if(entity != null){
                    final JSONObject respObject = new JSONObject(EntityUtils.toString(entity));
                    String result = respObject.toString();      
                    parseJSON(result);

. Я использую HttpClient для отправки запроса JSON на сервер. Затем сервер возвращает ответ в формате JSON. Это прекрасно работает. И вот здесь у меня проблемы. Я получаю HttpEntity с сервера. Затем я превращаю это в строку, которая выглядит так. {"Марка": "Форд", "Год": 1975, "Модель": "Мустанг"} Я хочу иметь возможность отправлять эту строку на мой parseJSON (String jString) , и он возвращает карту значений ключа. Я считаю, что это отличается от других сообщений в том, что я хочу, чтобы метод синтаксического анализа мог создавать карту значений ключей для любой строки JSON, которую я отправляю. Так что, если я отправлю его {"Двигатель": "v8", "Цилиндры": 8, "Трансмиссия": "Руководство", "Шестерни": 4} , он все равно будет работать. Это выполнимо? И если да, не могли бы вы подтолкнуть меня в правильном направлении?

7
задан Cristian 8 May 2012 в 05:12
поделиться