openFileOutput和openFileInput 获取手机内存中的文件而不是SD卡中的。
Context提供了两个方法来打开本应用程序的数据文件夹里的文件I/O流。
openFIleInput(String name):name文件对应的输入流
openFileOutput(String name,int mode):name文件对应的输出流
其中输出流中的第二个参数表示打开文件的模式,也可以称作权限:
MODE_PRIVATE:该文件只能被当前程序读写
MODE_APPEND:以追加的方式打开该文件,可以追加内容
MODE_WORLD_READABLE:该文件中的内容可以被其他程序读取
MODE_WORLD_WRITEABLE:该文件中的内容可以被其他程序读、写。
除此之外,Context还提供了如下几个方法来访问应用程序的数据文件夹:
getDir(String name,int mode):在应用程序的数据文件夹下获取或创建name对应的子目录
File getFilesDir():获取应用程序的数据文件夹的绝对路径
String[] fileList ():返回该应用程序的数据文件夹下的全部文件
deleteFile(String ): 删除该应用程序的数据文件夹下的指定文件
public class MainActivity extends Activity {
private EditText et;
private Button saveButton, readButton;
private TextView show;
private boolean MyWrite() {
try {
FileOutputStream fos = openFileOutput("data",
Context.MODE_WORLD_READABLE);
String content = et.getText().toString();
fos.write(content.getBytes());
fos.flush();
fos.close();
Toast.makeText(MainActivity.this, "成功", 1).show();
return true;
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
private boolean MyRead() {
try {
FileInputStream fis = openFileInput("data");
byte buff[] = new byte[1024];
StringBuffer sb = new StringBuffer();
int hasread = 0;
while ((hasread = fis.read(buff)) != -1) {
sb.append(new String(buff));
}
fis.close();
show.setText(sb.toString());
Toast.makeText(MainActivity.this, sb.toString(), 1).show();
return true;
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
return false;
}
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
et = (EditText) findViewById(R.id.edittext);
saveButton = (Button) findViewById(R.id.save);
readButton = (Button) findViewById(R.id.red);
show = (TextView) findViewById(R.id.show);
saveButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
MyWrite();
}
});
readButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
MyRead();
}
});
}
}Android---35---openFileInput、openFileOutput获取手机内存中的数据
原文地址:http://blog.csdn.net/u013476556/article/details/45485611