转载请注明出处:http://blog.csdn.net/aa464971/article/details/43046797
详解地址:http://www.dyhdyh.com
最新版下载地址:http://www.dyhdyh.com/download
交流QQ群:146261923
dyh对数据的处理有三种方式:
(1)json的解析(基于Gson,dyh完整版才有);
想更详细的了解Gson,可参考http://blog.csdn.net/lk_blog/article/details/7685169
(2)Sqlite的操作(基于Afinal,dyh完整版才有);
想更详细的了解Afinal,可参考http://blog.csdn.net/aa464971/article/details/41076445
(3)SharedPreferences的操作。
1、Gson(json解析)
基于Gson封装,使用更方便,仅1句代码。
User就是自己定义的实体类,这里拿User为例。
/** * 对象转json * @desc */ public void objToString() { String json = GsonUtil.objectToString(user, User.class); } /** * json转对象 * @desc */ public void stringToObj() { User user = (User) GsonUtil.StringToObject(objJson, User.class); } /** * 集合转json * @desc */ public void listToString() { String json = GsonUtil.objectArrayToString(list); } /** * json转集合 * @desc */ public void stringToList() { List<User> users = GsonUtil.StringToObjectArray(listJson, User.class); }
2、FinalDb(Sqlite操作)
先创建一个FinalDb对象,这里传入Context
FinalDb db = FinalDb.create(this);
定义一个实体类,这里用到了注解,@Table(name="user")这句代码表示,表名为user,属性就是字段,所以就不用再去建表拉,框架会根据类属性自动建表。还有两个很容易忽略的地方:①实体类必须有_id这个属性;②必须添加set、get方法。
@Table(name="user") public class User{ private int _id; private String username; private String password; private String email; public User() { } public int get_id() { return _id; } public void set_id(int _id) { this._id = _id; } public String getUsername() { return username; } public void setUsername(String username) { this.username = username; } public String getPassword() { return password; } public void setPassword(String password) { this.password = password; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } }
3、SharedPreferences
基于SharedPreferences封装,简化操作步骤。
先创建一个SharedPreferencesUtil对象,传入Context,以及你的SharedPreferences名称。
SharedPreferencesUtil sp = new SharedPreferencesUtil(this, "dyh");添加值进 SharedPreferences的方法。
sp.put("string", "这是添加的String值"); sp.put("int", 1234); sp.put("long", 1111111111111111l); sp.put("boolean", true); sp.put("float", 133.15854188175f);
获取SharedPreferences内的值的方法。
String string = sp.getString("string", "sp里没有值"); int intValue = sp.getInt("int", 0); long longValue = sp.getLong("long", 0); float floatValue = sp.getFloat("float", 0); boolean bool = sp.getBoolean("boolean", false); Set<String> set = sp.getStringSet("set", null);
SharedPreferences sharedPreferences = sp.getSp();
清空SharedPreferences数据的方法。
sp.clear();