Java学习笔记二十二(IO流之File类和InputStream、OutputStream类)

File类

 

相关常用函数:

       File类一般用来创建文件和查看文件的基本信息,不能对文件内容进行增删改操作。    

       File file = new File("路径“);    //将file指向路径下的文件(如果没有该文件,则file会指向空,而不会创建该文件。

       file.getName();                      //获取文件名

       file.length();                           //获取文件长度(file为空的话长度为0,返回的是long型数据)

       file.isFile();                            //判断是否为文件(返回true或是false)

       file.isDirectory();                   //判断是否是目录(同上)

       file.exist();                             //判断文件是否存在

创建文件:

       File file = new File("C:\\keshe\\a.txt");

       if(!file.exist()){

           file.createNewFile();

       }else{

           System.out.println("文件已经存在!");

创建目录:

        File f1 = new File("C:\\keshe","demo");  
        f1.mkdir();                                                   //建立目录
        File f2 = new File("C:\\keshe","a/b/c/d");
        f2.mkdirs();                                                 //建立多级目录

删除多级目录:

        public class TestDeleteAll{

             public void delete(File file){

                  if(file.exist()){

                      if(file.isDirectory()){

                            File[] fs = file.listFiles();     //获得file下的全部文件名

                            if(fs.length!=0){

                                  for(File file1:fs){

                                       del(file1);                //递归思想

                                  }

                             }

                            file.detele();

                      }

                    }

                 }

       public static void main(String[] args){

                  File file = new File("C:\\keshe\\a");

                  FileDeleteAll  t = new FileDeleteAll();

                  t.del(file);

        }

获取某个目录下的特定文件:

(1)使用endwith函数

      File file = new File("C:\\keshe\\a");

      File[] fs = file.listFiles();

      System.out.prinln(fs.getName().endsWith(".txt"));

(2)使用FileFilter接口

      File file = new File("C:\\keshe\\a");

      File[] fs = file.listFiles(new FIleFilter(){                         //返回满足条件的值

             public boolean accept(File filename){                   //实现接口必须实现其中的抽象方法accept

                    return filename.getName().endsWith(",txt");

            }

        }

InputStream和OutputStream类

IO的分类:

     (1)按照流向分: 输入流和输出流

     (2)按照单位分: 字节流和字符流

     (3)  按照功能分: 高级流和低级流

其中,InputStream和OutputStream是字节输入输出流,是所有自己输入输出流的抽象顶级父类。

在流进行读写文件的时候便与文件开通了一条管道(如果流不关则管道一直存在,所以需要及时关闭)。

基本的读写操作:read()和write()

 

      

     

                               

      

猜你喜欢

转载自blog.csdn.net/weixin_40373090/article/details/82534779