Android移动应用基础教程【数据存储】

一、数据存储方式

在这里插入图片描述

二、文件存储

1、将数据存入文件中

在这里插入图片描述

1.1、内部存储

FileOutputStream fos = openFileOutput(String name, int mode);
//参数是文件名和文件的操作模式
//打开应用程序中对应的输出流,将数据存储到指定的文件中
FileInputStream fis = openFileInput(String name);
//打开应用程序对应的输入流,读取指定文件中的数据
String fileName = "data.txt";                       // 文件名称
String content = "helloworld";                     // 保存数据
FileOutputStream fos = openFileOutput(fileName, MODE_PRIVATE);
fos.write(content.getBytes());	                  //将数据写入文件中
fos.close();                                      //关闭输出流

1.2、外部存储

String state = Environment.getExternalStorageState();  //获取外部设备的状态           
if (state.equals(Environment.MEDIA_MOUNTED)) {   //判断外部设备是否可用          
    File SDPath = Environment.getExternalStorageDirectory(); //获取SD卡目录
    File file = new File(SDPath, "data.txt");
    String data = "HelloWorld";
    FileOutputStream fos = new FileOutputStream(file);
    fos.write(data.getBytes());
    fos.close();
}

2、从文件中读取数据

2.1、读取内部存储中的文件的数据

String content = "";
    FileInputStream fis = null;
    fis = openFileInput("data.txt");    //获得文件输入流对象
    byte[] buffer = new byte[fis.available()];//创建缓冲区,并获取文件长度
    fis.read(buffer);     //将文件内容读取到buffer缓冲区
    content = new String(buffer);     //转换成字符串
     fis.close();		              //关闭输入流

2.2、读取外部存储中的文件数据

String state = Environment.getExternalStorageState();
if (state.equals(Environment.MEDIA_MOUNTED)) {
    File SDPath = Environment.getExternalStorageDirectory(); //获取SD卡路径
    File file = new File(SDPath, "data.txt");           //创建文件对象
    FileInputStream fis = null;
    BufferedReader br = null;
    fis = new FileInputStream(file);         //创建文件输入流对象
   //创建字符输入缓冲流的对象
    br = new BufferedReader(new InputStreamReader(fis));
   String data = br.readLine();              //读取数据
   br.close();                               //关闭字符输入缓冲流                                                 
   fis.close();                              //关闭输入流                                                     
}

3、申请SD卡写文件的权限

在这里插入图片描述

3.1、静态申请权限

在这里插入图片描述

3.2、动态申请权限

在这里插入图片描述

3.3、动态申请SD卡的写权限

<uses-permission    
                        android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 
ActivityCompat.requestPermissions(MainActivity.this, //动态申请权限的方法,参数是上下文
new String[]{"android.permission.WRITE_EXTERNAL_STORAGE"}, 1);
@Override
public void onRequestPermissionsResult(int requestCode, String[] permissions, 
int[] grantResults) {
//申请权限的回调方法
//第一个参数requestCode为请求码
//第二个参数permissions为请求的权限
//第三个参数grantResults为用户授予权限的结果,当用户授予权限时,该数组中对应的值为PackageManager.PERMISSION_GRANTED
   	super.onRequestPermissionsResult(requestCode, permissions, grantResults);
}

三、SharedPreferences存储

1、将数据存入SharedPreferences

在这里插入图片描述

2、读取和删除SharedPreferences中的数据

在这里插入图片描述
在这里插入图片描述

四、SQLite数据库存储

1、SQLite数据库简介

在这里插入图片描述

2、SQLite数据库的创建

在这里插入图片描述

3、数据库的基本操作

3.1、添加数据

在这里插入图片描述

3.2、删除数据

在这里插入图片描述

3.3、修改数据

在这里插入图片描述

3.4、查询数据

在这里插入图片描述

3.5、使用sql语句进行数据库操作

在这里插入图片描述

4、SQLite数据库中的事务

在这里插入图片描述
在这里插入图片描述

五、本章小结

本章主要讲解了Android中的数据存储,首先介绍了Android中常见的数据存储方式,然后详细地讲解了文件存储、SharedPreferences存储以及SQLite数据库存储,数据存储是Android开发中非常重要的内容,一般在应用程序中会经常涉及到数据存储的知识,因此要求初学者必须熟练掌握本章知识。

太在乎别人的眼光和评价,只会让自己做事放不开手脚,犹豫不决,失去自我,失去个性,丢失自我的价值。坚持自己所选择的,相信自己所坚持的,才是属于你自己的正确道路。别人怎么看你并不重要,重要的是你要做你自己,去做自己认为正确的事。

  • 9
    点赞
  • 42
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 4
    评论
### 回答1: 很抱歉,我是AI语言模型,无法回答您的问题。但是,我可以告诉您,Android移动应用基础教程第二版是一本介绍Android移动应用开发基础知识的书籍,适合初学者学习。书中包含了Android应用程序的开发环境搭建、UI设计、数据存储、网络通信等方面的内容。如果您对Android开发感兴趣,可以考虑阅读这本书。 ### 回答2: Android移动应用基础教程第二版是一本非常有价值的教材,它介绍了如何使用Android Studio以及Java语言开发Android移动应用程序的基础知识和技能。本书分为三大部分:第一部分介绍如何使用Android Studio创建新项目、编写布局文件、添加控件、运行和调试应用程序;第二部分介绍如何处理用户输入、使用布局、ListView、GridView等组件实现数据展示、使用Intent、Fragment等组件实现应用程序交互;第三部分介绍如何在应用程序中访问网络、使用SQLite数据库存储数据、创建服务和多线程应用程序。整本书的难度层次逐次增加,既适合Android移动应用开发入门者学习,也适合进阶学习的开发者参考。 首先,本书首先介绍了如何下载和安装Android Studio,并解释了Android Studio的主要界面和功能,包括项目视图、代码编辑器、布局编辑器等。然后,本书介绍了如何使用XML语言编写布局文件,以及如何通过Java代码访问布局中的控件,实现应用程序的基本功能。除了入门的编程基础知识之外,本书还介绍了如何使用Android Studio提供的控件和组件实现更高级的功能,比如用ListView和GridView实现数据展示、使用Fragment实现应用程序模块化、使用Intent实现应用程序进程间通信等。同时本书还提供了很多练习题和示例代码,让读者通过实际操作优化自己的编程技能。 本书中还介绍了如何在应用程序中访问网络,获取网络数据以及如何将数据存储在本地文件,有效管理和处理应用程序数据。本书的最后一部分介绍了如何创建服务和多线程应用程序,这是Android应用程序开发的重要知识点,因为它可以确保应用程序代码高效地运行。 总之,Android移动应用基础教程第二版是一本非常值得推荐的教材,它不仅覆盖了Android应用程序设计的基本概念和技术,还提供了大量的示例代码和练习题,非常适合初学者和进阶者学习。无论您是刚刚开始学习Android移动应用程序开发还是想提高技能水平,这本书都是您的不二选择。 ### 回答3: 《Android移动应用基础教程第二版》是一本面向初学者的Android移动应用开发入门教材,由赖明星、阮一峰两位知名作者倾力打造。本书从Android移动应用的架构、开发环境、UI设计、数据存取、网络通信等方面详细介绍了Android应用的开发过程和技巧,并给出了许多实用的案例及其源码。 本书的第一章介绍了Android开发环境的安装和配置,包括Android Studio软件、Java JDK、Android SDK和模拟器等的安装与使用。这对初学者来说是非常关键的,因为只有正确地安装和配置开发环境,才能顺利进行Android应用开发。 第二章讲解了Android应用的架构和基本原理,其中包括四大组件、应用生命周期、Intent机制、UI控件和布局等内容。这对于初学者来说是非常重要的,因为只有明确了Android应用的组成和机制,才能理解应用开发的过程和逻辑。 第三章介绍了多种UI控件和布局,包括如何创建和使用TextView、EditText、Button、ImageView等控件,并介绍了常见的布局方式和属性设置。这对于初学者来说也非常重要,因为Android应用的UI设计是应用吸引用户的第一步,只有美观实用的UI才能引起用户的兴趣和使用。 第四到八章则涉及到Android应用的核心开发内容,包括数据存取、网络通信、多线程编程、服务和广播等方面,涵盖了许多实用的案例和技巧。这些章节对于想要进一步学习Android应用开发的初学者来说非常宝贵,因为这些内容是应用开发中最基础和最重要的部分。 最后,本书还附带了许多实用的工具和资源,包括常用的第三方库、网站、书籍和论坛等。这些资源对于初学者来说非常有用,能够帮助他们更好地进行Android应用开发和学习。 总之,《Android移动应用基础教程第二版》是一本非常实用的Android应用开发入门教材,适合初学者学习和使用。本书详细介绍了Android应用的开发过程和技巧,帮助初学者顺利掌握Android应用开发的基础知识。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

振华OPPO

你的鼓励是我创作的最大动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值