LinkedHashMap<String, String> to JSON

  • Hallo Forum,


    ich habe jetzt verschiedene Varianten versucht, aber komme nicht zu dem Ergebnis was ich benötige.
    Eigentlich ganz einfach, ich möchte eine LinkedHashMap&lt;String, String&gt; (wichtig das die Datenstruktur geordnet ist) in einen JSON String konvertieren.
    Bsp:

    Java
    LinkedHashMap&lt;String, String&gt; cred = new LinkedHashMap&lt;String, String&gt;(2);
    cred.put("email", "[email protected]");
    cred.put("pwd", "passwort");


    ich schaffe es aber nur, daraus:

    Java
    ["[email protected]", "pwd=passwort"]


    zu machen,
    was ich aber brauche ist:

    Java
    {
    	"email": "[email protected]",
    	"pwd": "passwort"
    }


    damit ich es per POST an verschicken kann und auf PHP Seite das ganze in ein assoziatives Array packen kann.
    Das ganze soll allerdings nur mit Bordmitteln, also org.json gemacht werden, ich möchte nicht noch andere Jars einbauen.
    Es muss auch keine LinkedHashMap sein, hauptsache ist halt sie ist sortiert.


    Stehe leider gerade echt aufm Schlauch, könnte mir bitte wer helfen.
    Danke

  • Hi manuell,


    ah ok dachte du hättest schon was.


    Das hier müsste dich eigentlich weiter bringen:

    Java
    JSONObject object = new JSONObject();
    try {
      object.put("email", "[email protected]");
      object.put("pwd", "passwort");
      object.put("nickname", "titus");
    } catch (JSONException e) {
      e.printStackTrace();
    }
    Log.i(TAG,object.toString());


    Ausgabe:

    Code
    {"nickname":"titus","email":"[email protected]","pwd":"passwort"}


    mfg Titus

  • Hi,


    joar also so könnte man es natürlich machen, ABER
    Du hast ja jetzt per put die email als erstes reingepackt und in Deiner ausgabe hast Du die Email in der Mitte.
    Wenn ich das ganze jetzt so ans PHP schicke, ist in dem assoziativem Array die Email auch in der Mitte.


    Die Datenstruktur und die Ausgabe müssten halt "ordered" sein.

  • Hi,


    Quote

    Die Datenstruktur und die Ausgabe müssten halt "ordered" sein.


    äh warum? Wenn der Server den JSON-String erhält greifst doch doch per Key auf die Inhalte zu und da ist die Reihenfolge nicht wichtig. Die wär doch nur wichtig falls du per Index auf die Inhalte zugreifen möchtest.


    oder versteh ich dich falsch?


    mfg Titus

Participate now!

Don’t have an account yet? Register yourself now and be a part of our community!