• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >Android > Android数据存储的三种方式介绍(SharedPrefrences,File,SQLite)

Android数据存储的三种方式介绍(SharedPrefrences,File,SQLite)

作者:网友 字体:[增加 减小] 来源:互联网 时间:2017-05-26

网友通过本文主要向大家介绍了android sqlite存储,android sqlite,android sqlite使用,android sqlite实例,android sqlite数据库等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com

Android数据存储的三种方式介绍(SharedPrefrences,File,SQLite)


1,使用SharedPrefrences

用于简单少量的数据,数据的格式简单:都是普通的字符串,标量类型的值等,比如各种配置信息等等

SharedPrefrences与Editor简介:

创建SharedPreferences实例,通过Context.getSharedPreferences(String name,int mode);方法来获取SharedPreferences的实例
mode的值:
*Context.MODE_PRIVATE;该SharedPreferences数据只能被本应用程序调读,写
* Context.MODE_WORLD_READABLE;该SharedPreferences数据能被其他程序读,但是不能写
* Context.MODE_WORLD_WRITEABLE;该SharedPreferences数据能被其他程序读,写

SharedPreferences保存的数据主要是类似于配置信息格式的数据,因此他保存的数据主要是简单类型的key-value对

* SharedPreferences接口主要负责读取应用程序的Preferences数据,提供如下常用的方法访问key-value对
* boolean contains(String key);判断是否包含key的数据
* abstract Map getAll();获取全部键值对
* boolean getXxx(String key,xxx,defValue);获取指定的key对应的value值,如果key不存在,返回默认defvalue,xxx可以是Boolean,float,int,long,String等各种基本类型的值

SharedPreferences接口本身并没有提供写入数据的能力,而是通过 SharedPreferences的内部接口Editor写入数据,SharedPreferences调用edit()方法即可获得它所对应的Editor对象
Editor提供了如下方法:
* SharedPreferences.Editor clear();清空所有数据
* SharedPreferences.Editor putXxx(String key,xxx value);存入指定key对应的数据,xxx可以是Boolean,float,int,long,String等各种基本类型的值
* SharedPreferences.Editor remove(String key);删除指定key的数据
* Boolean commit();当Editor编辑完成之后,调用该方法提交修改

例子:一个按钮写数据,一个按钮读数据

activity_main.xml

 



\
MainActivity.java

 

 

package com.hust.sharedpreferences;

import java.text.SimpleDateFormat;
import java.util.Date;
import android.app.Activity;
import android.content.Context;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.Menu;
import android.view.MenuItem;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast;
/*
 * 创建SharedPreferences实例,通过Context.getSharedPreferences(String name,int mode);方法来获取SharedPreferences的实例
 * mode的值:
 * Context.MODE_PRIVATE;该SharedPreferences数据只能被本应用程序调读,写
 * Context.MODE_WORLD_READABLE;该SharedPreferences数据能被其他程序读,但是不能写
 * Context.MODE_WORLD_WRITEABLE;该SharedPreferences数据能被其他程序读,写
 * 
 * 
 * SharedPreferences保存的数据主要是类似于配置信息格式的数据,因此他保存的数据主要是简单类型的key-value对
 * 
 * SharedPreferences接口主要负责读取应用程序的Preferences数据,提供如下常用的方法访问key-value对
 *    boolean contains(String key);判断是否包含key的数据
 *    abstract Map getAll();获取全部键值对
 *    boolean getXxx(String key,xxx,defValue);获取指定的key对应的value值,如果key不存在,返回默认defvalue,xxx可以是Boolean,float,int,long,String等各种基本类型的值
 *    
 * SharedPreferences接口本身并没有提供写入数据的能力,而是通过   SharedPreferences的内部接口Editor写入数据,SharedPreferences调用edit()方法即可互殴它所对应的Editor对象
 * Editor提供了如下方法:
 *   SharedPreferences.Editor clear();清空所有数据
 *   SharedPreferences.Editor putXxx(String key,xxx value);存入指定key对应的数据,xxx可以是Boolean,float,int,long,String等各种基本类型的值
 *   SharedPreferences.Editor remove(String key);删除指定key的数据
 *   Boolean commit();当Editor编辑完成之后,调用该方法提交修改
 *   
 * */

public class MainActivity extends Activity {
	//
	SharedPreferences preferences;
	SharedPreferences.Editor editor;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);
        //实例化SharedPreferences对象,读数据
        preferences=getSharedPreferences("test",Context.MODE_WORLD_READABLE);
        //实例化Editor对象,写数据
        editor=preferences.edit();
        
        Button read=(Button) findViewById(R.id.button2);
        Button write=(Button) findViewById(R.id.button1);
        read.setOnClickListener(new OnClickListener(){

			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				String time=preferences.getString("time", null);				
				int rnd=preferences.getInt("rnd", 0);
				String result=time==null?"您暂时还未写入数据":"写入时间:"+time+"\n上次生成的数据数是:"+rnd;
				Toast.makeText(MainActivity.this, result, Toast.LENGTH_LONG).show();
			}
        	
        });
        write.setOnClickListener(new OnClickListener(){

			@Override
			public void onClick(View v) {
				// TODO Auto-generated method stub
				SimpleDateFormat sdf=new SimpleDateFormat("yyyy年MM月dd日"+"hh:mm:ss");
				editor.putString("time", sdf.format(new Date()));
				editor.putInt("rnd", (int)(Math.random()*1000));
				editor.commit();

			}
        	
        });
    }

    @Override
    public boolean onCreateOptionsMenu(Menu menu) {
        // Inflate the menu; this adds items to the action bar if it is present.
        getMenuInflater().inflate(R.menu.main, menu);
        return true;
    }

    @Override
    public boolean onOptionsItemSelected(MenuItem item) {
        // Handle action bar item clicks here. The action bar will
        // automatically handle clicks on the Home/Up button, so long
        // as you specify a parent activity in AndroidManifest.xml.
        int id = item.getItemId();
        if (id == R.id.action_settings) {
            return true;
        }
        return super.onOptionsItemSelected(item);
    }
}
SharedPrefrences文件的存储位置:

 

\
test.xml

 

\

待续。。。

 </div>

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • Android之SQLite数据存储,androidsqlite
  • Android数据存储的三种方式介绍(SharedPrefrences,File,SQLite)

相关文章

  • 2017-05-26Android开发专业名词及工具概述,android名词
  • 2017-05-26oracle 代码报错大全分析
  • 2017-05-26手机APP创建桌面快捷方式,app创建快捷方式
  • 2017-05-26如何判断设备是平板还是手机,判断设备平板手机
  • 2017-05-26Android逆向之旅---解析编译之后的Resource.arsc文件格式
  • 2017-05-26AndRodi Strudio中的按钮时件,androdistrudio
  • 2017-05-26组件RecyclerView的应用(一),组件recyclerview
  • 2017-05-26onTouch和onTouchEvent,ontouch
  • 2017-05-26读《重构手册》-重构之姊妹篇有感,《重构手册》姊妹篇
  • 2017-05-26Unity加入Android广告小结,unityandroid小结

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • Android自定义下拉刷新动画--仿百度外卖下拉刷新
    • 高仿it之家新闻客户端源码,高仿it之家源码
    • Android开发: fragment解析及案例
    • Android开发笔记(2)——ViewGroup,androidviewgroup
    • Android动态部署五:如何从插件apk中启动Service
    • Android中AIDL详解
    • Android开发技术周报 Issue#67
    • Android音频开发(5):音频数据的编解码
    • android源码解析之(五)--)Log相关介绍
    • xshell可以ping通但是不能远程服务器,putty可以远程

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有