利用IO流执行操作,此类操作的文件可以是任意路径(包括sdcard)下,但是需要为其操作授权。
文件操作可以直接使用Activity类完成,在Activity中定义了些方法,以实现文件的操作。
public FileInputStream openFileInput(String name) //设置要打开的文件输入流
public FileOutputStream openFileOutput(String name,int mode) //设置要打开的文件输出流,指定操作的模式,可以是0、MODE_APPEND、MODE_PRIVATE、MODE_WORLD_READABLE、MODE_WORLD_WRITEABLE
文件操作方法一共有两个,一个是进行文件的输出(openFileOutputStream(),返回OutputStream;另外一个是进行文件的输入(openFileInputStream(),返回InputStream),这两个方法返回的类型都是JavaIO流中的字节操作流对象。
//两个操作方法中只能写文件文明,不能写文件路径
文件默认会保存在"data\data\<package name>\files\"目录中
PS:快睡觉了,再奉上一段源代码吧
package com.example.fileoperate;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.PrintStream;
import android.app.Activity;
import android.os.Bundle;
import android.view.Menu;
public class MainActivity extends Activity {
private static final String FILENAME="cq.txt";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
FileOutputStream output=null;
try {
output=super.openFileOutput(FILENAME,Activity.MODE_PRIVATE);
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
PrintStream out=new PrintStream(output);
out.println("姓名:张三");
out.println("年龄:30");
out.println("地址:重邮。");
out.close();
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}