android第十步文件操作模式

Context.MODE_PRIVATE私有操作模式:创建出来的文件只能被本应用访问,其他应用无法访问该文件,另外采用私有模式创建的文件,写入文件中的内容会覆盖源文件的内容

Context.MODE_APPEND追加操作模式:只能被本应用访问,追加不覆盖内容

Context.MODE_WORLD_READBLE:可是被其他应用读取,追加不覆盖

Context.MODE_WORLD_WRITEABLE:可被其他程序文件写入数据覆盖,不可以被其他程序读取,如果想以追加的方式可以

FileOutputStream fs = new FileOutputStream(file,true); 第2个参数为是为追加

其他程序可以写也可以读

FileOutputStream  outStream = context.openFileOutput(filenametext,Context.MODE_WORLD_WRITEABLE+Context.MODE_WORLD_READABLE);

 

public void save(String filenametext, String filecontenttext) throws Exception {
//文件名称千万不要带路径
//私有操作模式:创建出来的文件只能被本应用访问,其他应用无法访问该文件,
//另外采用私有模式创建的文件,写入文件中的内容会覆盖源文件的内容
FileOutputStream outStream = context.openFileOutput(filenametext,Context.MODE_PRIVATE);
outStream.write(filecontenttext.getBytes());
outStream.close();
}
//快捷键ctrl+shift+y是小写 +x是大写
public void saveAppend(String filenametext, String filecontenttext) throws Exception {

FileOutputStream outStream = context.openFileOutput(filenametext,Context.MODE_APPEND);
outStream.write(filecontenttext.getBytes());
outStream.close();
}
public void saveReadable(String filenametext, String filecontenttext) throws Exception {

FileOutputStream outStream = context.openFileOutput(filenametext,Context.MODE_WORLD_READABLE);
outStream.write(filecontenttext.getBytes());
outStream.close();
}
public void saveWriteable(String filenametext, String filecontenttext) throws Exception {

FileOutputStream outStream = context.openFileOutput(filenametext,Context.MODE_WORLD_WRITEABLE);
outStream.write(filecontenttext.getBytes());
outStream.close();
}

其他的测试工程

public class AccessOtherProject extends AndroidTestCase {
public void testAccessPrivate() throws Throwable{
String path = "/data/data/com.example.file/files/text.txt"; linux完整路径
File file =new File(path);文件对象
FileInputStream inStream = new FileInputStream(file);放入流
ByteArrayOutputStream array = new ByteArrayOutputStream();
byte[] buffer = new byte[1024];
int len = 0;
while((len = inStream.read(buffer))!=-1)
{
array.write(buffer,0,len);
}
byte[] data = array.toByteArray();
array.close();
inStream.close();
String content = new String(data);
Log.i("123123123", content);
}
public void testAccessWriteable() throws Throwable{
String path = "/data/data/com.example.file/files/writeable.txt";
File file =new File(path);
FileOutputStream fs = new FileOutputStream(file,true);
fs.write("slkjflkd".getBytes());
fs.close();
}
}

 

-rw- 可以被本程序读写 rw同一组的其他应用也可以对他读写 ---其他应用不可以读写

r读 w写 第一个代表自己 第二个代表同组应用 第三个代表其他应用

上下文对象.getFileDir()获取当前应用的/file路径

上下文对象.getCacheDir()获取当前应用的/cache路径 cache 目录保存缓存

android第十步文件操作模式,,5-wow.com

郑重声明:本站内容如果来自互联网及其他传播媒体,其版权均属原媒体及文章作者所有。转载目的在于传递更多信息及用于网络分享,并不代表本站赞同其观点和对其真实性负责,也不构成任何其他建议。