Android File IO是基于Java,且所有的类与接口都放在java.io 包中:

   1.File
     这是文件基类,抽象地代表一个文件实体,它有四个不同的构造方法:               

     File(File dir, String name)   //Constructs a new file using the specified directory and name.

     File(String path)  //Constructs a new file using the specified path.

     File(String dirPath, String name) //Constructs a new File using the specified directory path and file name, placing a path separator between the two.

     File(URI uri) //Constructs a new File using the path of the specified URI.

     这些构造方法的实质都是一样的,就是构造一个File实例,必须提供一个完整的文件路径。

     构造了一个File实例,并不是说就新建了一个文件或文件夹,这个File实例,只是实际系统内文件实体的一个代表。

   重要方法:

    public boolean exists()   判断文件或文件夹是否存在

    public boolean isFile()   判断是否为文件

    public boolean isDirectory  判断是否为文件夹

 

    public boolean createNewFile()  根据制定的路径和文件名创建一个新的,空的文件

    public boolean  mkdir()   根据制定的路径创建文件夹  (一级操作)

    public boolean mkdirs()  根据制定的路径创建文件夹  (多级操作)

 

   public boolean delete() 删除文件或文件夹

   public boolean renameTo(File dest)  重命名文件或文件夹

 

   public long length()  获得文件的长度,单位为 byte(文件夹不可用)

 

   public String getName()  获得文件或文件夹的名字

   public String getAbsolutePath() 获得文件或文件夹的绝对路径

   pubic String getPath()  获得文件或文件夹的路径

 

  public File[]  listFiles()  返回文件夹内所有的File 对象

  public String[]  list()  返回文件夹内所有的文件或文件夹的名字

 

2.输入输出流:

 关于JAVA的输入输出流的基本概念可以参阅此篇博文:http://tonmly.blog.163.com/blog/static/17471285620116131326849/

 

3.Android 应用内的文件存储机制:

   Activity 提供了两个方法,可以分别获得基于字节的输入和输出流:

   public FileOutputStream  openFileOutput(String name, int mode) 获得输出流

   public FileInputStream  openFileInput(String name) 获得输入流

这两个方法都会在data/data/<applicatin-package>/files/ 来创建或读取文件,也就是说这是类型SharedPreference的,专门为一个应用内提供的文件存储机制。(默认情况下,不能在不同的应用之间共享

 

 对于openFileInput(String name)方法:

     name为文件的名称,不能包含“/”符号。

 

对于openFileOutPut(String name,int mode)方法:

    name为文件的名称,不能包含“/”符号。

    mode有如下四种模式:
    Use 0 or MODE_PRIVATE( the default operation) :用0表示默认值,只能够创建文件的应用程序访问该文件,每次文件写入为覆盖方式
    MODE_APPEND : 每次文件写入为追加方式,类似于StringBuffer中的append()方法。
    MODE_WORLD_READABLE  :只有读权限。
    MODE_WORLD_WRITEABLE :只有写权限。
    如果想同时得到读与写的权限,则可以在mode处通过如下方式创建:MODE_WORLD_READABLE+ MODE_WORLD_WRITEABLE

    调用openFileOutPut()方法,如果文件不存在,则自动创建。

arrow
arrow
    全站熱搜

    戮克 發表在 痞客邦 留言(0) 人氣()