Android ROM 文件存储数据

使用Activity 类的openFileInput()和openFileOutput方法来操作设备上的文件,创建的文件默认存在“/data/data/<pakage name>/files”目录下,如在包名为【com.company.business】的程序中创建一个【data.txt】文件,存放路径将是【/data/data/com.company.business/file/date.txt】.在默认状态下,文件不能在不同的程序之间共享,这两个方法只支持读取该应用目录下的文件,若读取非自身目录下的文件将会抛出FileNotFoundException异常。

关键的实现代码如下,建议将这两个方法放入两个菜单选项中进行调用,以查看程序效果。

(1)读取文件代码

public void readFile(String sFileName){
     try {
          FileInputStream fis = openFileinput(sFileName);
          //将字节流转换成字符流
          InputStreamReader inreader = new InputStreamReader(fis);
          //转换成带缓存的bufferedReader
          BufferedReaader bufferedReader = new BufferedReader(inReader);
          String s;
          while ((s = bufferedReader.readLine())!=null){
              Toast.makeText(this,s,Toast.LENGTH_LONG).show();
          }
          fis.close();//关闭输入流
          }catch  (Exception ex)
              ex.printStackTrace(); 
}
}

 

 

(2)写入文件代码

public void writeFile(String sFileName){
        String s = "hello";
        s = s+"/n"+"Nice to meet you";
        try{
        //定义一个文件字节输出流,名字为sFileName
        FileOutputStream fos = openFileOutput(sFileName,0);
        //将文件字节输入出流转换成文件字符输出流
        OutputStreamWriter outWriter = new OutputStreamWriter(fos);
        //再将文件字符输出流转换成缓存字符输出流
        BufferedWriter bufferedWriter = new BufferedWriter(outWriter);
        //使用write方法将信息写入文件
        bufferedWriter.writer(s);
        bufferedWriter.flush();
        fos.close();
}catch (Exception ex){
         ex.printStackTrace();
}
}

 

posted @ 2016-06-14 22:08  wmzz  阅读(342)  评论(0编辑  收藏  举报