路径:/data/data/包名/

this.getCacheDir() = /data/data/com.example.qq/cache/
getFilesDir() = /data/data/com.example.qq/files/
特点:当系统存储空间不足时,会自动删除cache目录里的文件
在应用层程序列表中点击清除数据就可以清除应用里所有的数据
直接操作流,files目录
this.openFileInput("config.txt");
this.openFileOutput("config.txt", 0);

1. 文件只能存储在自己应用程序私有的文件夹下,别的应用程序无法访问
2. this.getFilesDir() == /data/data/包名/files/
3. this.getCacheDir()==  /data/data/包名/cache/
4. this.openFileInput();
5. this.openFileOutput();
openFileOutput()方法的第二参数用于指定操作模式,有四种模式,分别为: 
Context.MODE_PRIVATE    =  0
Context.MODE_APPEND    =  32768
Context.MODE_WORLD_READABLE =  1
Context.MODE_WORLD_WRITEABLE =  2

//实例代码qq登录,用内部存储存储qq账户和密码

package com.example.qq;
import java.io.BufferedReader;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.io.InputStreamReader;
import android.app.Activity;
import android.os.Bundle;
import android.text.TextUtils;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.CheckBox;
import android.widget.EditText;
import android.widget.Toast; public class MainActivity extends Activity {
private EditText et_qq;
private EditText et_psw;
private CheckBox cb;
private Button btn;
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
// 设置布局
setContentView(R.layout.activity_main);
btn = (Button) findViewById(R.id.btn);
et_qq = (EditText) findViewById(R.id.qq);
et_psw = (EditText) findViewById(R.id.psw);
cb = (CheckBox) findViewById(R.id.checkBox1);
// 设置事件
readData();
btn.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
String qq = (String) et_qq.getText().toString().trim();
String psw = (String) et_psw.getText().toString().trim();
if (TextUtils.isEmpty(qq) || TextUtils.isEmpty(psw)) {
Toast.makeText(MainActivity.this, "QQ号码和密码不能为空", 0).show();
return;
}
String s = qq + "==" + psw;
boolean flag = cb.isChecked();
try {
if (flag) {
FileOutputStream fos = openFileOutput("qq.txt", 0);
fos.write(s.getBytes());
fos.close();
Toast.makeText(MainActivity.this, "成功保存", 0).show();
}
} catch (Exception e) {
e.printStackTrace();
Toast.makeText(MainActivity.this, "失败了", 0).show();
}
}
});
}
private void readData() {
try {
FileInputStream fis = openFileInput("qq.txt");
BufferedReader br = new BufferedReader(new InputStreamReader(fis));
String s = br.readLine();
String[] split = s.split("==");
String qq = split[0];
String psw = split[1];
et_qq.setText(qq);
et_psw.setText(psw);
fis.close();
} catch (IOException e) {
e.printStackTrace();
}
}
}

 

Android的内部存储的更多相关文章

  1. Android 在内部存储读写文件

    文件读写操作* Ram内存:运行内存,相当于电脑的内存* Rom内存:内部存储空间,相当于电脑的硬盘* sd卡:外部存储空间,相当于电脑的移动硬盘在内部存储空间中读写文件>小案例:用户输入账号密 ...

  2. Android file内部存储

    通过file=openFileOutput()获得,将数据存储在data/data/+包名+files下面. 代码如下: MainActivity.java: import android.os.Bu ...

  3. 彻底了解android中的内部存储与外部存储

    我们先来考虑这样一个问题: 打开手机设置,选择应用管理,选择任意一个App,然后你会看到两个按钮,一个是清除缓存,另一个是清除数据,那么当我们点击清除缓存的时候清除的是哪里的数据?当我们点击清除数据的 ...

  4. 大过年的,不下班的,上个Android文件操作类(内部存储和sd卡均可)

    package com.kkdiangame.UI.res; import java.io.ByteArrayOutputStream; import java.io.File; import jav ...

  5. (转)Android如何编程设置APP安装位置(外部存储或内部存储)?

    Beginning with API Level 8, you can allow your application to be installed on the external storage ( ...

  6. Android中将Bitmap对象以PNG格式保存在内部存储中

    在Android中进行图像处理的任务时,有时我们希望将处理后的结果以图像文件的格式保存在内部存储空间中,本文以此为目的,介绍将Bitmap对象的数据以PNG格式保存下来的方法. 1.添加权限 由于是对 ...

  7. 彻底理解android中的内部存储与外部存储

    我们先来考虑这样一个问题: 打开手机设置,选择应用管理,选择任意一个App,然后你会看到两个按钮,一个是清除缓存,另一个是清除数据,那么当我们点击清除缓存的时候清除的是哪里的数据?当我们点击清除数据的 ...

  8. android中的文件操作详解以及内部存储和外部存储(转载)

    原文链接:http://m.blog.csdn.net/article/details?id=17725989 摘要 其实安卓文件的操作和java在pc环境下的操作并无二致,之所以需要单独讲解是因为安 ...

  9. Android SDCard和内部存储中gcc编译后的可执行文件无法运行提示 cannot execute - Permission denied

    原因是mount的方式问题,root后运行 su mount -o rw,remount /mnt/sdcard   //SDCard mount -o rw,remount /mnt/interna ...

随机推荐

  1. python中的网络通信,socket、select、selectors、socketserver

    楔子 网络通信用于获取一个算法在本地运行所需的数据,还可以共享信息实现分布式处理,另外可以用来管理云服务. python的标准库提供了一些模块来创建网络服务以及访问现有服务ipaddress模块提供了 ...

  2. Django_05_模板

    模板 如何向请求者返回一个漂亮的页面呢?肯定需要用到html.css,如果想要更炫的效果还要加入js,问题来了,这么一堆字段串全都写到视图中,作为HttpResponse()的参数吗?这样定义就太麻烦 ...

  3. django 发送邮件功能

    setting.py # 邮件配置 EMAIL_BACKEND = 'django.core.mail.backends.smtp.EmailBackend' EMAIL_HOST = 'smtp.e ...

  4. config.json读取和存储

    json格式的配置文件的读取和存储 public class ConfigHelper { public static T GetConfig<T>(string path) { if ( ...

  5. CVE-2018-10933 LibSSH auth bypass

    漏洞原理 认证实现错误, 认证分为多个步骤,可以直接跳到成功的步骤       A vulnerability was found in libssh's server-side state mach ...

  6. appium+python 【Mac】UI自动化测试封装框架介绍 <三>---脚本的执行

    我自己编写的脚本框架中,所有的脚本执行均放在一个py文件中,此文件作为启动文件执行,包含了运行此文件将执行脚本.分配设备端口.自启appium服务等. 详细的介绍待后期补充.

  7. hbase实践之HFile结构

    本文目录如下所示: 目录 HFile在HBase架构中的位置 什么是HFile HFile逻辑结构 HFile逻辑结构的优点 HFile物理结构 HFile生成流程 HFile中Block块解析 多大 ...

  8. BZOJ 3210: 花神的浇花集会 (切比雪夫距离)

    GXZlegend 切比雪夫和曼哈顿距离的互相转化看这里 传送门 CODE #include <bits/stdc++.h> using namespace std; #define LL ...

  9. [RxJS] RxJS Advanced Patterns Operate Heavily Dynamic UIs

    Check the playground. import {Counter, CountDownState, ConterStateKeys, PartialCountDownState} from ...

  10. ubuntu服务器常用命令

    1.查看系统版本 cat /etc/issue cat /etc/lsb-release 2.查看cpu lscpu 3.查看内存 free -m 4.查看硬盘大小 fdisk -l |grep Di ...