美文网首页java学习
NO.27 文件操作

NO.27 文件操作

作者: smallnumber | 来源:发表于2017-07-28 22:34 被阅读0次

    java.io.File用于表示文件(目录),也就是说程序员可以通过File类在程序中操作硬盘上的文件和目录。

    java.io.File:File的每一个实例用于表示文件系统中的一个文件或目录

    使用File可以:

    1)访问该文件或目录的属性信息(名字,大小,修改日期等)

    2)操作文件或目录(创建,删除)

    3)若表示的是目录,可以查看该目录中的子项信息

    但是不能访问一个文件中的数据

    表示文件的相关方法:

    文件已存在时

    创建新文件:

    创建文件操作

    删除一个文件:

    删除单个文件

    File表示目录时:

    创建目录方法:

    创建一个目录 创建多级目录

    删除目录:

    删除一个目录 删除多级目录(主要)

    这里有递归调用,就是方法内部调用自己方法的现象称为递归调用,递归现象就是允许程序执行到某个阶段时整体重新来过。

    使用递归需要注意:

    1)方法内部调用自己方法不能100%成立,否则是死循环。

    2)递归层次尽量少,因为递归消耗内存可观,运行效率差。

    获取一个目录中的所有子项方法:

    查看当前目录的子项

    文件过滤器过滤子项:File提供了一个重载的listFiles方法,该方法可以指定一个文件过滤器,这样可以将该目录中所有满足过滤器要求的子项获取到。

    获取当前目录下的文件

    下面介绍一个可以读写文件数据的类,Java提供了一个可以对文件随机访问的操作,访问包括读和写操作。该类名为RandomAccessFile。该类的读写是基于指针的操作。

    创建文件:

    读取文件数据:

    文件复制(单字节复制):

    速度特别慢,不推荐

    文件复制(多字节一起复制):随机读写效率差,块读写效率高。所以若希望提高读写效率,可以通过提高每次读写的数据量减少读写次数来达到。

    速度很快,或许比window自带的复制还要快

    文件指针操作:

    1)使用RAF读写基本类型数据,以及RAF对指针的操作:

    获取指针位置和写出int、long、double值 移动指针读取int、long、double值

    int skipBytes(int n):方法可以尝试跳过输入的 n 个字节以丢弃跳过的字节,返回跳过的实际字节数。如果 n 为负数,则不跳过任何字节。

    2)写字符串:

    读字符串:

    相关文章

      网友评论

        本文标题:NO.27 文件操作

        本文链接:https://www.haomeiwen.com/subject/jloflxtx.html