数据存储——SP存储

一.存储方式分类:SharedPreferences存储

二.SharedPreferences存储

1.特点

①存储单一数据,例如数值,字符串,布尔

②文件:/date/date/包名/shared_prefs/xxx.xml:    <map><string  name="key">value</string></map>

③以键值对的形式存储

④可以设置不被其他应用操作

2.API

(1)SharedPreferences

①获取实例context.getSharedPreferences():

1)name  存储文件名;  2)mode  操作模式:MODE_PRIVATE不能被别的应用访问,覆盖模式;MODE_APPEND不能被别的应用访问,追加模式;

②启动编辑器:edit():返回Editor

③读取Value:1)getString(key,defValue  缺省值)  2)getAll( )  返回所有键值对的 Map集合

(2)Editor

①存放数据:1)putString(key,value)  2)putLong(key,value)  3)putInt  4)putFloat  5)putBoolean  6)putStringSet

②提交存储

③clear()  清除

④remove(String  key)  移除指令key的键值对

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 3     xmlns:tools="http://schemas.android.com/tools"
 4     android:layout_width="match_parent"
 5     android:layout_height="match_parent"
 6     android:paddingBottom="@dimen/activity_vertical_margin"
 7     android:paddingLeft="@dimen/activity_horizontal_margin"
 8     android:paddingRight="@dimen/activity_horizontal_margin"
 9     android:paddingTop="@dimen/activity_vertical_margin"
10     tools:context="com.hanqi.testapp3.MainActivity"
11     android:orientation="vertical">
12
13     <TextView
14         android:layout_width="wrap_content"
15         android:layout_height="wrap_content"
16         android:text="Hello World!" />
17
18     <Button
19         android:layout_width="match_parent"
20         android:layout_height="wrap_content"
21         android:text="SP存储"
22         android:onClick="bt_OnClick"/>
23
24     <Button
25         android:layout_width="match_parent"
26         android:layout_height="wrap_content"
27         android:text="SP读取"
28         android:onClick="bt1_OnClick"/>
29
30 </LinearLayout>

.xml

 1 package com.hanqi.testapp3;
 2
 3 import android.content.SharedPreferences;
 4 import android.os.Bundle;
 5 import android.support.v7.app.AppCompatActivity;
 6 import android.view.View;
 7 import android.widget.Toast;
 8
 9 public class MainActivity extends AppCompatActivity {
10
11     @Override
12     protected void onCreate(Bundle savedInstanceState) {
13         super.onCreate(savedInstanceState);
14         setContentView(R.layout.activity_main);
15     }
16
17     public void bt_OnClick(View v)
18     {
19         //1.得到SharedPreferences对象
20         SharedPreferences sharedPreferences=getSharedPreferences("abc",MODE_APPEND);
21
22         //2.得到编辑器
23         SharedPreferences.Editor editor=sharedPreferences.edit();
24
25         //3.使用editor添加数据
26 //        editor.putString("b","xxxxxx");
27 //        editor.putLong("long",123456);
28
29         editor.remove("a");
30
31
32         //4.提交保存
33         editor.commit();
34
35         Toast.makeText(MainActivity.this, "保存数据成功", Toast.LENGTH_SHORT).show();
36     }
37
38     //读取
39     public void bt1_OnClick(View v)
40     {
41         SharedPreferences sp=getSharedPreferences("abc",MODE_PRIVATE);
42
43         String str=sp.getString("ab", "默认值");
44
45         Toast.makeText(MainActivity.this, "key=b"+"value="+str, Toast.LENGTH_SHORT).show();
46     }
47 }

.Java

  

   

时间: 2024-10-06 02:24:06

数据存储——SP存储的相关文章

数据存储——SharedPreferences存储

一.特点 1.存储单一数据,例如数值,字符串,布尔 2.存放的文件:/data/data/包名/shared_prefs/xxx.xml <map><string name="key">value</string></map>: 3.以键值对的形式存储 4.可以设置不被其他应用操作 二.API 1.SharedPreferences 1-获取实例  context.getSharedPreferences( ) 1>name  存储

SP存储和读取

尚硅谷demo package com.atguigu.l04_datastorage; import android.app.Activity;import android.content.Context;import android.content.SharedPreferences;import android.content.SharedPreferences.Editor;import android.os.Bundle;import android.view.View;import

IOS开发中关于数据的本地化存储

对于IOS开发者而言, 项目中数据的本地化存储,最难的一点,莫过于SQL语句的编写,除此之外, 其实也没什么难度, 当然在创建数据库之前,我们必须要做的是对数据进行分析, 然后对FMDB进行简单的封装: 代码如下: #import "SQLiteManger.h" #import "FMDB.h" @interface SQLiteManger () @end @implementation SQLiteManger /// 创建一个单例单例 +(instancet

android数据储存之存储方式

可以将数据储存在内置或可移动存储,数据库,网络,sharedpreference. android可以使用Content provider来使你的私有数据暴漏给其他应用程序. 一.sharedpreference 得到sharedpreference的两种方法: 1.getSharedPreferenced():使用这个方法你可以定义多个preference文件 2.getPreferenced():只创建一个preference文件 sharedpreference不是严格用来储存"用户配置&

各式结构化数据 动态 接入-存储-查询 的处理办法 (第二部分)

各式结构化数据的动态接入存储查询,这一需求相信有很多人都遇到过,随着实现技术路线选择的不同,遇到的问题出入大了,其解决办法也是大相径庭.数据存储在哪儿,是关系型数据库,还是NoSQL数据库,是MySQL还是Oracle,怎么建立索引,建立什么类型的索引,都是大学问.下面,我要把我对这一解决办法的思考总结一下,有成熟的也有不成熟的,希望大家一起共同探讨. 关键词:结构化数据, 动态, 接入, 存储, 查询 首先,我们得定义一下在本文中什么是结构化数据,这里的结构化数据主要是指扁平化的.可以由基础数

选择子数据,默认存储父数据 的校验方法

如下图:选择了子数据,默认选中父级数据,数据库中会存储两条数据 为使脚本通用性更好,不写死两级,可将数据放到List里处理,代码如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36     String companyName = null;     companyName = "测试公司1.1";      stepInfo(&q

能否针对容量和性能来优化数据中心的存储?Adaptec by PMC解决方案给你肯定的答案

能否针对容量和性能来优化数据中心的存储? Adaptec by PMC解决方案给你肯定的答案 Dave Berry 可能需要一个数据中心来帮助我记录下曾访问过的遍布全球的数据中心.然而,无论其地理位置,无论其服务的市场,所有的数据中心都有一个共同的使命:即用最少的资源.以最高的性能.来提供尽可能多的服务. 企业与用户两方面均需要快速而安全可靠的数据访问,另一方面,暴涨的存储内容迫使数据中心不得不添加越来越多的存储容量,同时还要维持客户所期望的高性能. 问题就在于找到一个有效的途径,既能处理日益增

JavaScript 中的所有数据都是以 64 位浮点型数据(float) 来存储。浮点型数据使用注意事项

JavaScript 中的所有数据都是以 64 位浮点型数据(float) 来存储. 所有的编程语言,包括 JavaScript,对浮点型数据的精确度都很难确定: <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>菜鸟教程(runoob.com)</title> </head> <body> <p id="

菜单数据(树形)结构的使用-- ---数据的列存储转换为行存储

一.菜单数据表中的存储结构 二.转换后的数据结构 三. 转换过程 1.确定菜单数据的最大级别 /// <summary> /// 获得Nature定义的最大目录级别,以便于确定Nature的DataTable表结构中的列数目 /// </summary> /// <returns></returns> public int GetMaxNatureLevel() { if (dtNature == null && dtNature.Rows.