栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

FileInputStream和FileOutputStream

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

FileInputStream和FileOutputStream

Java定义两个超类(抽象类)

java.io.InputStream与java.io.outputStream 1

分为:节点流,处理流

文件流是一对低级流,用于读写文件

FileOutputStream输出流

文件流创建时,如果该文件不存在会自动将其创建(前提是该文件所在目录必须存在)

FileOutputStream提供两种构造器

FileOutputStream(String path);

FileOutputStream fos = new FileOutputStream("fos.dat");

FileOutputStream(File file);

        File file = new File("fos1.dat");
        FileOutputStream fos1 = new FileOutputStream(file);
向文件输入数据

void write(int d)

向文件中写入1个字节,写入的内容是输入int类型d 的低八位,其他丢弃

FileOutputStream fos = new FileOutputStream("fos.dat");
fos.write(2);

块写文件

void write(byte[] data)

void write(byte[] data,int offset,int len)//offset 是byte数组的偏移量,len是byte数组的长度,即从数组的offset下标开始,写入len长度

FileInputStream输入流

读取文件

int read():从文件中读取一个字节,返回的int值低八位有效,如果返回int的值为整数-1,则已经读完了

int read(byte[] data):块读数据,从文件中一次性读取给定的data数组总长度的字节数,并返回实际读取的字节数(最后一次读取,有很大的可能小于byte数组的长度),如果返回整数-1,表示是已经读取到了文件末尾

复制文件的例子
public class CopyDemo2 {
    public static void main(String[] args) throws IOException {
        FileInputStream fis = new FileInputStream("sogou_pinyin_98a.exe");
        FileOutputStream fos = new FileOutputStream("sogouCopy.exe");

        byte[] dat = new byte[1024 * 10];//定义byte数组长度为10k
        int len;

        long start = System.currentTimeMillis();
        while ((len = fis.read(dat)) != -1) {//如果读到的数组长度不为-1,则循环继续
            fos.write(dat,0,len);
        }
        long end = System.currentTimeMillis();
        System.out.println("复制完毕,耗时:"+(end-start)+"毫秒");
        fis.close();
        fos.close();
    }
}
覆盖模式

如果指定文件存在,则文件流在创建时会将文件内容删除

FileOutputStream fos = new FileOutputStream("sogouCopy.exe");
追加模式

若指定文件存在,文件流会将写出的数据陆续追加到文件中

FileOutputStream fos1 = new FileOutputStream("demo2.txt",true);

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/841668.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号