android 私有资料的读写

android 私有文件的读写默认情况下 ,任何应用创建的文件,数据库, sharedpreferences都应该是私有的(位于/d

android 私有文件的读写

默认情况下 ,任何应用创建的文件,数据库, sharedpreferences都应该是私有的(位于/data/data/your_project/files/),其余程序无法访问。除非在创建时指明是MODE_WORLD_READABLE 或者 MODE_WORLD_WRITEABLE,只要这样其余程序才能正确访问。

?

要添加权限:

?

? ? <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"></uses-permission> ?

? ? <uses-permission android:name="android.permission.MODE_WORLD_READABLE"></uses-permission> ?

? ? <uses-permission android:name="android.permission.MODE_WORLD_WRITEABLE"></uses-permission>?

?

写入文件:

?

private String text_of_input = edit_Text.getText().toString();

?

private OutputStream?os?;

?

os = this.openFileOutput("txtME", MODE_PRIVATE);//要打开文件的名字,打开模式为私有。没有这个文件就创建一个。位于/data/data/your_project/files/

?

os.write(text_of_input.getBytes());//把text_of_input写到了txtME文件。

?

打开文件:

?

private InputStream is;

?

is = this.openFileInput("txtME");//打开了txtME文件。

?

private byte[] b?= new byte[1024];

?

int length = is.read(b);//此时已经把文件都独到了数组b中了,返回b的长度。

?

private String Text_of_output?= new String(b);

?

setTitle("文件字数" + length);

?

Text1.setText(Text_of_output);

?

打开raw文件夹下的txt文件:

?

private InputStream?= this.getResources().openRawResource(R.raw.filetext);

?

private byte[] b?= new byte[102400];

?

int length = iputRaw.read(b);

?

private String Text_of_output?= new String(b);

?

setTitle("静态文件字数" + length);?

?

Text1.setText(Text_of_output);?