黑马程序员技术交流社区

标题: 黑马随堂记day09 [打印本页]

作者: 丶唯萌Pro    时间: 2017-10-27 23:23
标题: 黑马随堂记day09
File:文件和目录路径名的抽象表示形式,File类的实例是不可变的。
构造方法:
        File(String pathname) :传入一个字符串路径封装成File对象。
        File((File parent, String child) :传入一个File类型对象的父级路径和子级路径
        File(String parent, String child) :传入一个父级路径和子级路径
File类常用功能:
        创建功能:
                boolean createNewFile():指定路径不存在该文件时创建文件,返回true,否则返回false
                boolean mkdir():当指定的单级文件夹不存在时创建文件夹并返回true,否则返回false
                boolean mkdirs():当指定的多级文件夹并返回true,否则返回false
        删除功能:
                boolean delete():删除文件或者删除单级文件夹
        绝对路径:
                固定不可改变的路径,以盘符开头
        相对路径:
                相对某个参照物,不能以盘符开头
                在eclipse中相对路径相对应当前项目的根目录
        注意:删除一个文件夹,这个文件夹下面不能有其他的文件和文件夹
        判断功能:
                boolean exists();判断文件或者文件夹是否存在,如果存在返回true,否则返回false
                boolean isAbsolute();判断File对象指向的路径是否是绝对路径,如果是绝对路径返回true,否则返回false
                boolean isDirectory();判断File对象指向的路径是否是文件夹,如果是,返回true,否则返回false
                boolean isFile();判断File对象指向的路径是否是文件,如果是返回true,否则返回false
                boolean isHidden();判断FIle对象指向的路径是否有隐藏属性,如果隐藏了则返回true,否则返回false。
        获取功能:
                File getAbsoluteFile():以File对象的形式返回当前File对象所有指向的绝对路径
                String getAbsolutePath():以字符串形式返回File对象所指向的绝对路径
                String getParent():获取当前路径的父级路径,以字符串形式返回该父级路径
                File getParentFile():获取当前路径的父级路径,以File对象形式返回该父级路径
                String getName():获取文件或文件夹的名称
                String getPath():获取File对象中封装的路径
                long lastModified():以毫秒值返回最后修改时间
                long length():返回文件的字节数
        修改功能:
                boolean renameTo(File dest):将当前File对象所指向的路径 修改为 指定File所指向的路径
        注意:修改的文件路径不能存在,如果存在则修改失败。
File重要的获取功能:
        String[] list():以字符串数组形式返回当前路径下所有的文件以及文件夹名称
        File[] listFiles():以File对象数组的形式返回当前路径下所有的文件和文件夹的名称
        注意:只有指向文件夹File对象才可以调用该方法
        static File[] listRoots():获取计算机中所有的盘符
需求:输出指定目录下所有的java文件名(包含子目录)
IO流分类:
        流向
                输入流        读取数据        FileReader        Reader
                输出流        写出数据        FileWrider        Writer
        数据类型
                字节流
                        字节输入流        读取数据        InputStream
                        字节输出流        写出数据        OutputStream
                字符流
                        字符输入流        读取数据        Reader
                        字符输出流        写出数据        Writer
使用字符流复制文本文件:
        数据源        IODemo.java
        目的地        d:\\IODemo.java
分别使用字符流和字节流复制图片
        二进制文件只能使用字节流进行复制(使用windows自带记事本打开读不懂的)
        文本文件的复制即可使用字符流,也可以使用字节流
        字节流对象:FileInputStream 和 FileOutputStream
使用字节流复制文本文件
        数据源:
                IODemo.java
        目的地:
                d:\\a\\IODemo.java
需求:将指定目录(包含内容)复制到另一目录中
        源目录        目标目录
        分析:
                首先我们要获取源目录下所有的文件和子目录
                        我们可以把源目录封装成一个File对象
                        我们可以调用File类listFiles()方法
                        我们可以获取源目录下所有的文件和子目录所对应的File对象
                如果我们获取到的文件,
                        先在目标目录中创建该文件所对应的目录
                        进行文件的复制。
                如果我们获取到的是子目录,
                        看看子目录下面是否还有其他的文件和更深层的子目录
                       


作者: 1317181388    时间: 2017-10-28 08:39
来挣黑马币

作者: fashionkillyou    时间: 2017-10-28 12:37
写的不错,小妹妹





欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2