Java - 文件(IO流)-阿里云开发者社区

开发者社区> 开发与运维> 正文

Java - 文件(IO流)

简介: Java - 文件 (IO) 流的分类:     > 文件流:FileInputStream | FileOutputStream | FileReader | FileWriter     > 缓冲流:BufferedInputOutStrea...
Java - 文件 (IO)

流的分类:
    > 文件流:FileInputStream | FileOutputStream | FileReader | FileWriter
    > 缓冲流:BufferedInputOutStream | BufferedOutputStream | BufferedReader | BufferedWriter
    > 转换流:InputStreamReader | OutputStreamWriter
    > 标准输入 / 输出流:
    > 打印流(很少用):PrintStream | PrintWriter
    > 数据流(很少用):DataInputStream | DataOutputStream
    > 对象流(涉及序列化 / 反序列化):ObjectInputStream | ObjectOutputStream
    >随机存取文件流:RandomAccseeFile

一、java.io.File类的大概使用
    > 凡是与输入输出相关的类、接口都定义在java.io包下
    > File类对象是与平台无关的
    > File中的方法,仅涉及到如何创建、删除、重命名等等,涉及文件内容的必须由IO流来做
    > File类的对象长作为IO流的具体类的构造器的形参

1、File表示一个文件`
    File file = new File("文件的绝对路径:F:/Program File/1.txt");
    // 在当前目录下
    File file = new File("文件的相对路径:1.txt");

2、File表示一个路径
    File file = new File("文件的绝对路径:F:/Program File/");

3、方法介绍:
    > getName():文件名
    > getPath():文件路径
    > getAbsoluteFile()
    > getAbsolutePath()
    > getParent()
    > renameTo(File new Name):文件重命名
    > exists():文件是否存在
    > canWrite():文件是否可写
    > canRead():文件是否可读
    > isFile():是否是一个文件
    > isDirectory():是否是一个目录
    > lastModified():文件最后的修改时间
    > length():文件内容的大小
    > createNewFile():新建一个文件
    > delete():删除一个文件
    > mkdir():创建一个文件夹
    > mkdirs():创建一个文件夹,若上层文件夹不存在,则一起创建
    > list():列出file目录下的所有文件,以String的形式
    > listFiles()

二、Java IO流的使用
    > 除了处理文本文件的流为字符流,其他的流都是字节流

1、FileInputStream | FileOutputStream
    > 抽象基类:InputStream OutputStream Reader Writer
    > FileInputStream:
        >  read():一次读取一个字节,每次调用返回一个字节的数据,当读到文件末尾,返回 -1,读取的文件一定要存在
            File file = new File("文件路径");
            FileInputStream fs = new FileInputStream(file);    
            // 读取文件
            fs.read();
        > read(buffer []):将文件读取到一个Byte类型的buffer大小的数组中,返回读到的字节数 ,当读到文件末尾,返回 -1
    > FileOutputStream:
        > write(buffer []):将一个buffer字节数组写入文件

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
开发与运维
使用钉钉扫一扫加入圈子
+ 订阅

集结各类场景实战经验,助你开发运维畅行无忧

其他文章