在android中用到文件的读取,当使用java 中的IO类的时候又和java中不太一样。
android中通过不能使用java中的new FileOutputStream() 方法,虽然不报错,但是程序运行不了。android中使用的是openFileOutput方法,后面直接加文件名,路径是android默认的手机内存中的路劲,此处只能写文件名称,不能加路径。但是但是前面需要加Context类型的引用,否则在其他类里面调用这个
我在一个Test类中写了这样一个方法(Test类extends Activity):
public void buidProperties(){
BufferedWriter bw = null;
String next = "next=next";
try {
FileOutputStream fos = context.openFileOutput("properties.properties", Context.MODE_PRIVATE);
bw = new BufferedWriter(new OutputStreamWriter(fos));
bw.write(next);bw.newLine();
} catch (FileNotFoundException e) {
e.printStackTrace();
}
catch (IOException e) {
e.printStackTrace();
}finally{
try {
bw.close();
} catch (IOException e) {
e.printStackTrace();
}}}
如果在openFileOutput前面不加context的话,在其他类中调用该类的该方法程序运行不了。
该context对象的引用要在该类的构造方法中构造的时候传递。
Test test = new Test(getApplicationContext());
同样文件的读取也要加context。