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

- rw- rw- ---
      
        - :文件
        r:只读  readable
        w:只写  writeable
        x: 可执行

第一位:文件类型
        234位:应用程序对自己文件的权限
        567位:同组用户对这个文件的操作权限
        8910位:其他应用程序对文件的权限

package com.example.filemode;
import java.io.FileOutputStream;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.Toast; public class MainActivity extends Activity implements OnClickListener {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Button btn1 = (Button) findViewById(R.id.btn1);
Button btn2 = (Button) findViewById(R.id.btn2);
Button btn3 = (Button) findViewById(R.id.btn3);
Button btn4 = (Button) findViewById(R.id.btn4);
// 设置监听事件
btn1.setOnClickListener(this);
btn2.setOnClickListener(this);
btn3.setOnClickListener(this);
btn4.setOnClickListener(this);
}
@Override
public void onClick(View v) {
try {
FileOutputStream fos = null;
switch (v.getId()) {
case R.id.btn1:// 私有
fos = this.openFileOutput("private.txt", MODE_PRIVATE);
break;
case R.id.btn2:// 只读
fos = this.openFileOutput("readable.txt", MODE_WORLD_READABLE);
break;
case R.id.btn3:// 只写
fos = this.openFileOutput("writeable.txt", MODE_WORLD_WRITEABLE);
break;
case R.id.btn4:// 可读可写
fos = this.openFileOutput("public.txt",MODE_WORLD_READABLE + MODE_WORLD_WRITEABLE);
break;
default:
break;
}
fos.write("呵呵".getBytes());
fos.close();
Toast.makeText(this, "文件保存成功,哈哈。。。", 0).show();
} catch (Exception e) {
e.printStackTrace();
Toast.makeText(this, "文件保存失败楼", 0).show();
}
}
}

package com.example.readwrite;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.InputStreamReader;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.widget.Toast; public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void read(View v){
try {
File file = new File("/data/data/com.example.filemode/files/public.txt");
FileInputStream fis = new FileInputStream(file);
BufferedReader br = new BufferedReader(new InputStreamReader(fis));
String text = br.readLine();
br.close();
Toast.makeText(this, "哈哈:"+text, 0).show();
} catch (Exception e) {
e.printStackTrace();
Toast.makeText(this, "无权读取文件", 0).show();
}
} public void write(View v){
File file = new File("/data/data/com.example.filemode/files/public.txt");
try {
FileOutputStream fos = new FileOutputStream(file);
fos.write("LoaderMan".getBytes());
fos.close();
Toast.makeText(this, "嘿嘿", 0).show();
} catch (Exception e) {
e.printStackTrace();
Toast.makeText(this, "失败了!", 0).show();
}
}
}

最新文章

  1. NOI 题库 8471 题解
  2. SQL Server 2012提供的OFFSET/FETCH NEXT与Row_Number()对比测试(转)
  3. [CareerCup] 5.6 Swap Odd and Even Bits 交换奇偶位
  4. C4.5决策树算法概念学习
  5. java.util.concurrent.CountDownLatch
  6. 冒泡,快排算法之javascript初体验
  7. jquery 取值赋值
  8. 2013 ACM-ICPC长沙赛区全国邀请赛—Special equations
  9. algorithm@ Strongly Connected Component
  10. A9两款芯片管脚数目
  11. android studio中文乱码的解决方法【转】
  12. ci 中使用 pdo 连接 mysql
  13. ubuntu中在线升级python
  14. MTK Android O1平台预置apk
  15. Python初学(1)
  16. crontab命令行和日志查看
  17. xss 学习记录
  18. oracle having字句
  19. 基于NEO的私链(Private Blockchain)
  20. oracle偏爱hostname

热门文章

  1. linux 使用 rz 上传和 sz下载 命令
  2. Linux基础知识之文件的权限(一)
  3. linux基础5-vi文本处理器
  4. easyUI 布局
  5. 10_Hive自定义函数UDF
  6. Prometheus 监控 Redis 集群的正确姿势
  7. linux usb驱动记录(一)
  8. 车型识别API调用与批量分类车辆图片
  9. MyBatis-13-缓存
  10. 浅析Json底层