本文主要是介绍安卓学习专栏——SharedPreferences文件存储(图文+代码),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
步骤
- 系列文章
- 前言
- 1.实现效果
- 1.1点击保存数据
- 1.2文件查找工具
- 1.3查看数据
- 3.java功能文件
- 附录.参考资料
- 资源下载
- 总结
系列文章
提示:转到安卓学习专栏,观看更多内容!
点我直达–>安卓学习专栏
前言
SharedPreferences文件存储。
1.实现效果
1.1点击保存数据
1.2文件查找工具
1.3查看数据
进入到/data/data/com.example.sharedpreferencestest/shared_prefs/目录下,可以看到生成了一个userData.xml文件
## 2.xml外观文件
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical" ><Buttonandroid:id="@+id/save_data"android:layout_width="match_parent"android:layout_height="wrap_content"android:text="保存数据"/>
</LinearLayout>
3.java功能文件
首先给按钮注册了一个点击事件,然后在点击事件中通
过getSharedPreferences() 方法指定SharedPreferences的文件名为
data,并得到了SharedPreferences.Editor 对象。接着向这个对象中
添加了3条不同类型的数据,最后调用apply() 方法进行提交,从而完
成了数据存储的操作。
PreferenceManager 类中的getDefaultSharedPreferences()方法
这是一个静态方法,它接收一个Context 参数,并自动使用当前应
用程序的包名作为前缀来命名SharedPreferences文件。得到了
SharedPreferences 对象之后,就可以开始向SharedPreferences文
件中存储数据了,主要可以分为3步实现。
(1) 调用SharedPreferences 对象的edit() 方法来获取一
个SharedPreferences.Editor 对象。
(2) 向SharedPreferences.Editor 对象中添加数据,比如添加一
个布尔型数据就使用putBoolean() 方法,添加一个字符串则使
用putString() 方法,以此类推。
(3) 调用apply() 方法将添加的数据提交,从而完成数据存储操
作。
(以上介绍来自郭老师的第一行代码)
这里的MODE_PRIVATE,有相关的解释: Context.MODE_PRIVATE:为默认操作模式,代表该文件是私有数据,只能被应用本身访问,在该模式下,写入的内容会覆盖原文件的内容,如果想把新写入的内容追加到原文件中。可以使用Context.MODE_APPEND
Context.MODE_APPEND:模式会检查文件是否存在,存在就往文件追加内容,否则就创建新文件。
Context.MODE_WORLD_READABLE和Context.MODE_WORLD_WRITEABLE用来控制其他应用是否有权限读写该文件。
MODE_WORLD_READABLE:表示当前文件可以被其他应用读取;
MODE_WORLD_WRITEABLE:表示当前文件可以被其他应用写入。
package com.example.sharedpreferencestest;import androidx.appcompat.app.AppCompatActivity;
import android.content.SharedPreferences;
import android.os.Bundle;
import android.view.View;
import android.widget.Button;
import android.widget.Toast;public class MainActivity extends AppCompatActivity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);Button saveData = (Button) findViewById(R.id.save_data);saveData.setOnClickListener(new View.OnClickListener() {@Overridepublic void onClick(View v) {SharedPreferences.Editor editor = getSharedPreferences("userData",MODE_PRIVATE).edit();//设置文件名为userData//设置下方的键值对editor.putString("userName", "nanli");editor.putInt("age", 28);editor.putBoolean("isMan", true);editor.apply();}});}
}
附录.参考资料
《第一行代码》6.3.1 将数据存储到SharedPreferences中
资源下载
as项目完整文件下载
总结
大家喜欢的话,给个👍,点个关注!继续跟大家分享敲代码过程中遇到的问题!
这篇关于安卓学习专栏——SharedPreferences文件存储(图文+代码)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!