Как преобразовать строку в JSONObject? - PullRequest
0 голосов
/ 11 февраля 2020

У меня есть строка со значением abc@xyz.com. Я должен передать это значение на сервер как:

{"email":"abc@xyz.com"}

Я передаю значение на сервер, как это, используя okhttp:

Map<String, String> map = new HashMap<>();
map.put("email", email);
new PostMethodWithProgress(login_url, map, this, new Callback()
{
    @Override
    public void done(String reply)
    {
        try
        {
            JSONObject object = new JSONObject(reply);

            if (object.getString("status").equals("200"))
            {

                //Toast Success Message
            }
            else
            {
                //Toast Failure Message
            }
        }
        catch (Exception e)
        {
            Log.e("ASA", "Error is: " + e);
        }
    }
}).execute();

Как мне это сделать?

Ответы [ 5 ]

1 голос
/ 11 февраля 2020

Вы можете просто использовать JSONObject для достижения этого

JSONObject jsonObject = new JSONObject();
jsonObject.put("email", "abc@xyz.com");

String result = jsonObject.toString();

Выход:

{"email":"abc@xyz.com"}
1 голос
/ 11 февраля 2020

простой способ использовать этот код для передачи jsonobject как строки в okhttp

String jsonString = "";
        try {
            JSONObject obj = new JSONObject();
            obj.put("email", "abc@xyz.com");
            obj.put("pwd", "12356");

            jsonString = obj.toString();
            //out put like this -> {"email":"abc@xyz.com","pwd":"123456"}
            Log.d("JsonString__",jsonString);
        }catch (Exception e){};
1 голос
/ 11 февраля 2020

Используйте Google Gson для преобразования строки в модель, а модель в строку легко
ConvertModel convertModel = new Gson().fromJson(reply, ConvertModel .class);

Тогда вы можете легко проверить

0 голосов
/ 26 февраля 2020

опробуйте этот код со своими данными.

/**
 * This method is used to create text size and color code json and store it in json object.
 *
 * @param textSize       text size entered into edit text.
 * @param colorOfPreview text color of custom text color.
 * @return return json object of created text size and color.
 */
private String createJSONObject(String textSize, int colorOfPreview) {
    JSONObject jsonObject = new JSONObject();
    try {
        // put your values here 
        jsonObject.put("textSize", textSize);
        jsonObject.put("textColor", colorOfPreview);
        return jsonObject.toString();
    } catch (JSONException e) {
        e.printStackTrace();
    }
    return jsonObject.toString();
}
0 голосов
/ 12 февраля 2020

JsonObject - это изменяемый набор отображений имени / значения. Имена являются уникальными ненулевыми строками. Значения могут быть любой комбинацией JSONObject, JSONArray, Strings, Booleans, Integers, Longs, Doubles или NULL.

для вашего случая key - это электронная почта , а value - abc@xyz.com, поэтому, как я сказал JsonObject, мы можем поставить как пару ключ, так и значение как ниже -

JsonObject object = new JsonObject();
object.put("email","abc@xyz.com");

Если мы конвертируем выше JsonObject в строку, то ее значение будет -

{"email":"abc@xyz.com"}

надеюсь, это поможет вам.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...