18.Android之SharedPreferences数据存储学习

SharedPreferences是Android中最容易理解的数据存储技术,实际上SharedPreferences处理的就是一个key-value(键值对)SharedPreferences常用来存储一些轻量级的数据。

实现SharedPreferences存储的步骤如下:

(1)获取SharedPreferences对象

(2)利用edit()方法获取Editor对象。

(3)通过Editor对象存储key-value键值对数据。

(4)通过commit()方法提交数据。

实现代码:

 1 <?xml version="1.0" encoding="utf-8"?>
 2 <LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
 3               android:layout_width="match_parent"
 4               android:layout_height="match_parent"
 5               android:orientation="vertical">
 6
 7     <Button
 8         android:id="@+id/btn1"
 9         android:layout_width="wrap_content"
10         android:layout_height="wrap_content"
11         android:text="保存SharedPreferences对象数据" />
12
13     <Button
14         android:id="@+id/btn2"
15         android:layout_width="wrap_content"
16         android:layout_height="wrap_content"
17         android:text="读取SharedPreferences对象数据" />
18
19 </LinearLayout>
 1 package com.example.sharedpreferencesdemo;
 2
 3 import android.app.Activity;
 4 import android.content.SharedPreferences;
 5 import android.os.Bundle;
 6 import android.view.View;
 7 import android.widget.Button;
 8 import android.widget.Toast;
 9
10 public class MainActivity extends Activity {
11
12     private Button btnsava;
13     private Button btnread;
14
15     @Override
16     protected void onCreate(Bundle savedInstanceState) {
17         super.onCreate(savedInstanceState);
18         setContentView(R.layout.activity_main);
19
20         btnsava = (Button) findViewById(R.id.btn1);
21         btnread = (Button) findViewById(R.id.btn2);
22
23         btnsava.setOnClickListener(new View.OnClickListener() {
24
25             @Override
26             public void onClick(View v) {
27                 // 实例化SharedPreferences对象(第一步)
28                 SharedPreferences mySharedPreferences = getSharedPreferences(
29                         "test", Activity.MODE_PRIVATE);
30
31                 // 实例化SharedPreferences.Editor对象(第二步)
32                 SharedPreferences.Editor editor = mySharedPreferences.edit();
33
34                 // 用putString的方法保存数据
35                 editor.putString("name", "pig");
36                 editor.putString("habit", "sleep");
37
38                 // 提交当前数据
39                 editor.commit();
40                 // 使用toast信息提示框提示成功写入数据
41                 Toast.makeText(getApplicationContext(),
42                         "数据成功写入SharedPreferences!", Toast.LENGTH_LONG).show();
43
44             }
45         });
46
47         btnread.setOnClickListener(new View.OnClickListener() {
48
49             @Override
50             public void onClick(View v) {
51                 SharedPreferences sharedPreferences = getSharedPreferences(
52                         "test", Activity.MODE_PRIVATE);
53
54                 // 使用getString方法获得value,注意第2个参数是value的默认值
55                 String name = sharedPreferences.getString("name", "");
56                 String habit = sharedPreferences.getString("habit", "");
57
58                 // 使用toast信息提示框显示信息
59                 Toast.makeText(
60                         getApplicationContext(),
61                         "读取数据如下:" + "\n" + "name:" + name + "\n" + "habit:"
62                                 + habit, Toast.LENGTH_LONG).show();
63
64             }
65         });
66     }
67 }

SharedPreferences将会把这些数据保存在test.xml文件中,可以在手机内存(部分手机要root)/data/data/<package name>/shared_prefs目录下看到.

运行效果:

    

时间: 2024-10-11 06:22:51

18.Android之SharedPreferences数据存储学习的相关文章

Android 使用SharedPreferences数据存储

自己写了个SP辅助类 虽然写的有点啰嗦,也是自己的成果.如下: package com.yqy.yqy_testsputil; import android.annotation.SuppressLint; import android.app.Activity; import android.content.Context; import android.content.SharedPreferences; /** * SP辅助类 * @author YQY * * */ @SuppressL

Android开发之数据存储的四种方式之SharedPreferences

Android项目开发中使用的数据存储方式有:网络存储.sqlite存储.File存储和SharedPreferences存 储,四种存储方式对应的Demo别人是NetworkDemo.SqliteDemo.FileDemo和SharedPreferencesDemo, 根据应用的场景选择其中一种或多种方式,比如在登录界面验证,需要将用户名和密码通过SharedPreferences方式保存,注册信息的时候需要通 过网络将数据存储到后台数据库中.结合一个登录界面的验证,使用SharedPrefe

Android入门笔记 - 数据存储 - SharedPreferences

接下来四篇我们来介绍Android中用于数据存储的四种方式: SharedPreferences Sqlite Files 网络 今天我们先来看一个最简单的:SharedPreferences. 这种数据存储方式是最简单,最轻便,也最实用的,但是只能用来储存基本数据类型.我们来看看怎么使用: 1. res/ layout/ activity_main.xml <LinearLayout xmlns:android="http://schemas.android.com/apk/res/an

Android Learning:数据存储方案归纳与总结

前言 最近在学习<第一行android代码>和<疯狂android讲义>,我的感触是Android应用的本质其实就是数据的处理,包括数据的接收,存储,处理以及显示,我想针对这几环分别写一篇博客,记得我的学习心得,也希望跟各位新手同学相互努力促进.今天这篇博客,我想介绍一下数据的存储,因为数据的接收,存储,处理以及显示这几环环环相扣,而数据的存储直接关系到数据的处理和显示,所以显得尤为重要. 所以本文针对数据存储的常见方案和其使用进行了归纳.分为程序内存储和程序间数据访问,程序内存储

67.Android中的数据存储总结

转载:http://mp.weixin.qq.com/s?__biz=MzIzMjE1Njg4Mw==&mid=2650117688&idx=1&sn=d6c73f9f04d02ede7a741b45e801d74e#rd 本篇文章会帮助大家快速了解Android中各种数据存储机制的应用场景以及基本使用方法,力求在头脑中建立一个“目录”.有了这个目录,具体使用细节在实际应用时再查询文档即可得到. 0. 概述 Android为我们提供了以下存储机制: Shared Preferenc

Android下的数据存储与訪问 --- 以文件的形式

Android下的数据存储与訪问 --- 以文件的形式 1.1 储存文件存放在手机内存中: // *** 储存数据到 /data/data/包名/files/jxn.txt文件里 String data = "test"; // /data/data/包名/files File filesDir = context.getFilesDir(); File file = new File(filesDir, "jxn.txt"); FileOutputStream f

Android下的数据存储与访问(1) --- 以文件的形式

Android下的数据存储与访问(1) --- 以文件的形式 1.1 储存文件存放在手机内存中: // *** 储存数据到 /data/data/包名/files/jxn.txt文件中 String data = "test"; // /data/data/包名/files File filesDir = context.getFilesDir(); File file = new File(filesDir, "jxn.txt"); FileOutputStrea

Android开发实践 数据存储

所有应用程序必然有数据的输入输出,Android也是一样的,Android应用程序的参数设置.运行状态数据这些都需要保存到外部存储器上,保证关机后数据不丢失,如下是几种Android常见的数据存储方式: SharedPreferences:适合保存少量数据(一些配置信息.积分之类): SQLite:一个真正轻量级数据库,没有后台进程,整个数据库就对应于一个文件,适合大量数据需要存储.访问的情况. 下来详细来看看它们的用法. 1.SharedPreferences SharedPreference

Android中的数据存储

Android中的数据存储主要分为三种基本方法: 1.利用shared preferences存储一些轻量级的键值对数据. 2.传统文件系统. 3.利用SQLite的数据库管理系统. 对SharedPreferences对象和SQLite数据库,它们的数据仅对创建它们的应用是可访问的. (比如,MODE_WORLD_READABLE 和 MODE_WORLD_WRITEABLE现在(since API 17)已经被标记为deprecated). 换句话说,它们不是共享的,如果需要在不同的应用之间