Android– 如何将JSON对象添加到sharedPreferences?

Android– 如何将JSON对象添加到sharedPreferences?,第1张

概述我想将数据附加到现有的JSON对象中,并将数据作为字符串保存到具有以下结构的共享首选项中."results":[{"lat":"value","lon":"value"},{"lat":"value",

我想将数据附加到现有的JSON对象中,并将数据作为字符串保存到具有以下结构的共享首选项中.

"results":[          {             "lat":"value",             "lon":"value"          },           {             "lat":"value",             "lon":"value"          }        ]

我怎么能这样做?

我试过这样的事,但没有运气.

// get stored JsON object with saved positionsString JsonDataString = this.getSharedPreferencesstringValue(ctx, "positions", "last_positions");if (JsonDataString != null) {    Log.i(AppHelper.APP_LOG_nameSPACE, "JsON DATA " + JsonDataString);    JsONObject JsonData = new JsONObject(JsonDataString);    JsonData.put("lat", lat.toString());    JsonData.put("lon", lon.toString());    JsonData.put("city", city);    JsonData.put("street", street);    JsonData.put("date", appHelper.getActualDateTime());    JsonData.put("time", appHelper.getActualDateTime());    this.setSharedPreferencesstringValue(ctx, "positions", "last_positions", JsonData.toString());} else {    this.setSharedPreferencesstringValue(ctx, "positions", "last_positions","{}");                  }

谢谢你的建议.

解决方法:

我认为实现这一目标的更简单方法是使用Gson.

如果您使用的是gradle,则可以将其添加到依赖项中

compile 'com.Google.code.gson:gson:2.2.4'

要使用它,您需要为需要加载的对象定义类.在你的情况下,它将是这样的:

// file MyObject.javapublic class MyObject {    List<Coord> results = new ArrayList<Coord>();        public static class Coord {        public double lat;        public double lon;}

然后只需在需要时使用它来往/离开Json:

String JsonDataString = this.getSharedPreferencesstringValue(ctx, "positions", "last_positions");Gson gson = new Gson();MyObject obj = gson.fromJson(JsonDataString, MyObject.class);// Noew obj contains your JsON data, so you can manipulate it at your will.Coord newCoord = new Coord();newCoord.lat = 34.66;newCoord.lon = -4.567;obj.results.add(newCoord);String newJsonString = gson.toJson(obj);
总结

以上是内存溢出为你收集整理的Android – 如何将JSON对象添加到sharedPreferences?全部内容,希望文章能够帮你解决Android – 如何将JSON对象添加到sharedPreferences?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1116422.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存