/**************2016年5月4日 更新**************************/

知乎:android编程中写文件(例如a.txt)后存在手机哪个位置啊?

用FileOutputStream fos = openFileOutput(FILENAME, Context.MODE_PRIVATE); fos.write(content.getBytes()); fos.close(); 建立新文件并写入后,在手机中找不到这个文件,用了搜索也没有这个文件。请问有大神知道文件会自动存在哪?或者应该用什么方法来创建一个根目录下的文件?

酱油瓶:

不指定的话,在/data/ data/ 应用包名 文件夹里

手机没有root权限的话,data下的数据是看不到的

/****************************************************/

1. 使用Context上下文对象调用openFileOutput(文件名,mode)可以在/data/data/包名/ 下创建一个文件输出对象,其中mode有

Context.MODE_PRIVATE(私有方式),

Context.MODE_WORLD_READABLE(可读)

Context.MODE_WORLD_WRITEABLE(可写)

当别的应用读取私有文件时会报fileNotFound premission den,

别的应用可以读取可读文件和公开文件

2. 单选框组<RadioGroup><RadioButton>,默认竖直方向android:orientation=”horizontal”水平,获取选中的值,RadioGroup对象的getCheckedRadioButtonId(),可以得到被选中的RadioButton

@suppressLint 是压制警告的作用

3. Linux系统下的文件权限,10个字符,----------

一般情况下android下每一个应用都是一个独立的用户对应一个独立的组

0位置 - 代表文件,d代表目录

1-3位置  当前用户  r 可读,w可写,x可执行

查看当前用户和组,cmd进入adb shell,cd到/data/data 执行ls -l就能看到

4-6位置  当前用户所在的组 r 可读,w可写,x可执行

7-9位置  其他用户的权限,别的应用访问这个文件相当于这个角色,

-  - - -  - - -  - - -  对应0 000

-  rw-  - - -  - - -  对应0 600

-  rw-  rw-  rw-  对应0 666  在shell下可以使用chmod 666 private.txt 来更改权限

业务代码修改:

    /**
* 保存用户名和方法的业务方法
* @param context 上下文
* @param username 用户名
* @param password 方法
* @param mode 1私有 2可读 3可写 4公开
* @return
*/
@SuppressWarnings("deprecation")
public static boolean saveUserInfo(Context context,String username,String password,int mode){
File file=new File(context.getFilesDir(),"info1.txt");
try {
FileOutputStream fos = null;
switch (mode) {
case 1:
fos=context.openFileOutput("private.txt", Context.MODE_PRIVATE);
break;
case 2:
fos=context.openFileOutput("readable.txt", Context.MODE_WORLD_READABLE);
break;
case 3:
fos=context.openFileOutput("writeable.txt", Context.MODE_WORLD_WRITEABLE);
break;
case 4:
fos=context.openFileOutput("private.txt", Context.MODE_WORLD_READABLE+Context.MODE_WORLD_WRITEABLE);
break;
default:
break;
}
String info=username+"##"+password;
fos.write(info.getBytes());
fos.close();
return true;
} catch (Exception e) {
e.printStackTrace();
return false;
} }

[android] android下文件访问的权限的更多相关文章

  1. 无废话Android之android下junit测试框架配置、保存文件到手机内存、android下文件访问的权限、保存文件到SD卡、获取SD卡大小、使用SharedPreferences进行数据存储、使用Pull解析器操作XML文件、android下操作sqlite数据库和事务(2)

    1.android下junit测试框架配置 单元测试需要在手机中进行安装测试 (1).在清单文件中manifest节点下配置如下节点 <instrumentation android:name= ...

  2. Android开发学习---android下的数据持久化,保存数据到rom文件,android_data目录下文件访问的权限控制

    一.需求 做一个类似QQ登录似的app,将数据写到ROM文件里,并对数据进行回显. 二.截图 登录界面: 文件浏览器,查看文件的保存路径:/data/data/com.amos.datasave/fi ...

  3. Android下文件访问的权限

    * 默认情况下,Android中,应用程序的文件时私有的,其他应用程序不可以读取私有的文件 * 底层用的时Linux文件的权限 - rw- rw- ---                - :文件   ...

  4. 25_android下文件访问的权限

    写文件:FileOutputStream fos = 上下文.openFileOutput("private.txt",Context.MODE_PRIVATR);参数1 文件名, ...

  5. Android学习笔记_20_访问应用权限汇总

    <manifest xmlns:android="http://schemas.android.com/apk/res/android" package="com. ...

  6. [置顶] Linux下文件和目录权限说明

    在Linux下使用ls -l或者ll命令可以查看文件和文件夹的权限.结果显示类似于: drwxrwxrwx,这里分为四组,分别为文件类型,文件所有者的权限(读写执行),文件所有者所在组用户的权限(读写 ...

  7. 关于 IIS7.0下文件写入无权限的解决办法

    1. 在IIS Web站点上右键 --> 编辑权限 2. 在弹出的窗体上选择[安全]选项卡,如图: 3. 在安全选项卡中点击[编辑]按钮,弹出如图对话框: 4. 点击[添加]按钮,弹出如图对话框 ...

  8. 【翻译】Android多线程下安全访问数据库

    为了记录如何线程安全地访问你的Android数据库实例,我写下了这篇小小札记.文章中引用的项目代码请点击这里       假设你已编写了自己的 SQLiteOpenHelper. publicclas ...

  9. 获取SD卡下Android/data/下文件

    通常情况下多数应用程序都会将缓存的位置选择为 /sdcard/Android/data/<application package>/cache 这个路径.选择在这个位置有两点好处:第一,这 ...

随机推荐

  1. [smf]smf论坛也很漂亮

    smf论坛代码国内使用的比较少,可能是大家习惯了dz论坛的互动方式吧!但是,smf论坛系统不失为一款好的论坛系统,也是目前为数不多的开源代码.使用起来之后,你会体会到它强大的后台操作.(例如:插件的安 ...

  2. 如何高效地写CSS--等以后有空多加总结一下

    CSS写的并不多,如果从零开始的项目,自己一定想搬砖来得容易点.CSS编写一定有其工程化的方法,来时编写更加有效率. 考虑将CSS的预处理LESS.Sass或Stylus引入,或者将CSS的后处理Po ...

  3. JAVA程序CPU 100%问题排查

    做JAVA开发的同学一定遇到过的爆表问题,看这里解决  https://www.cnblogs.com/qcloud1001/p/9773947.html   本文由净地发表于云+社区专栏 记一次Ja ...

  4. [转] KVM I/O slowness on RHEL 6

    KVM I/O slowness on RHEL 6 http://www.ilsistemista.net/index.php/virtualization/11-kvm-io-slowness-o ...

  5. 网络编程懒人入门(六):深入浅出,全面理解HTTP协议

    本文引用了自简书作者“涤生_Woo”的文章,内容有删减,感谢原作者的分享. 1.前言 HTTP(全称超文本传输协议,英文全称HyperText Transfer Protocol)是互联网上应用最为广 ...

  6. 每天学点SpringCloud(十三):SpringCloud-Stream整合RabbitMQ

    我们知道,当微服务越来越来多的时候,仅仅是feign的http调用方式已经满足不了我们的使用场景了.这个时候系统就需要接入消息中间件了.相比较于传统的Spring项目.SpringBoot项目使用消息 ...

  7. 第51节:Java当中的集合框架Map

    简书作者:达叔小生 Java当中的集合框架Map 01 Map提供了三个集合视图: 键集 值集 键-值 映射集 public String getWeek(int num){ if(num<0 ...

  8. C#中四步轻松使用log4net记录本地日志(WPF有点小区别)

    在这里,记录我在项目中使用log4net记录本地日志的步骤.在不会之前感觉很难,很神秘,一旦会了之后其实没那么难.其实所有的事情都是一样的,下面我就分享一下我使用log4Net的经验. 第一步:首先从 ...

  9. Python - 使用pycallgraph生成函数关系图

    1- pycallgraph简介 可用于创建python函数关系图,依赖于dot命令,需要先安装 graphviz: HomePage:http://pycallgraph.slowchop.com/ ...

  10. ModelState 错误信息输出

    在MVC的项目中,我们通常情况下,为了方便(偷懒),会直接使用 !ModelState.IsValid 来判断实体的验证是否正确,但是这样对于用户的体验是不好的,当填写的内容比较多的时候,用户需要自己 ...