目录

IO流文件拷贝

前言

分析步骤:

数据源: 源文件(E:\...)

目的地: 目标文件(E:\...)

工具: (FileInputStream FileOutputStream...)

字节流(使用FileInputStream和FileOutputStream读取每一个字节...)

public static void copy1(String src,String des) throws Exception{
FileInputStream fis = new FileInputStream(src);
FileOutputStream fos = new FileOutputStream(des);
int b = 0;
while((b = fis.read())!=-1){
fos.write(b);
fos.flush();
}
fis.close();
fos.close();
}

字节流(使用FileInputStream和FileOutputStream一次读取一个byte数组...)

public static void copy2(String src,String des)throws Exception{
FileInputStream fis = new FileInputStream(src);
FileOutputStream fos = new FileOutputStream(des);
int len = 0;
byte[] b = new byte[1024];
while((len = fis.read(b))!=-1){
fos.write(b,0,len);
fos.flush();
}
fis.close();
fos.close();
}

高效字节缓冲流(使用BufferedInputStream和BufferedOutputStream一次性读取一个字节)

public static void copy3(String src,String des)throws Exception{
BufferedInputStream bis = new BufferedInputStream(new FileInputStream(src));
BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(des));
int b = 0;
while((b=bis.read())!=-1){
bos.write(b);
bos.flush();
}
bis.close();
bos.close();
}

高效字节缓冲流(使用BufferedInputStream和BufferedOutputStream一次性读取一个字节数组)

public static void copy4(String src,String des)throws Exception{
BufferedInputStream bis = new BufferedInputStream(new FileInputStream(src));
BufferedOutputStream bos = new BufferedOutputStream(new FileOutputStream(des));
int len = 0;
byte[] b = new byte[1024];
while((len = bis.read(b))!=-1){
bos.write(b, 0, len);
bos.flush();
}
bis.close();
bos.close();
}

字符流(使用FileReader和FileWriter读取每一个字符)

public static void copy5(String src,String des)throws Exception{
FileReader fr = new FileReader(src);
FileWriter fw = new FileWriter(des);
int b = 0;
while((b = fr.read())!=-1){
fw.write(b);
fw.flush();
}
fr.close();
fw.close();
}

字符流(使用FileReader和FileWriter读取每一个字符数组)

public static void copy6(String src,String des)throws Exception{
FileReader fr = new FileReader(src);
FileWriter fw = new FileWriter(des);
int len = 0;
char[] b =new char[1024];
while((len = fr.read(b))!=-1){
fw.write(b,0,len);
fw.flush();
}
fr.close();
fw.close();
}

高效字符缓冲流(使用BufferedReader和BufferedWriter读取每一个字符)

public static void copy7(String src,String des)throws Exception{
BufferedReader br = new BufferedReader(new FileReader(src));
BufferedWriter bw = new BufferedWriter(new FileWriter(des));
int b = 0;
while((b = br.read())!=-1){
bw.write(b);
bw.flush();
}
br.close();
bw.close();
}

高效字符缓冲流(使用BufferedReader和BufferedWriter读取每一个字符数组)

public static void copy8(String src,String des)throws Exception{
BufferedReader br = new BufferedReader(new FileReader(src));
BufferedWriter bw = new BufferedWriter(new FileWriter(des));
int len = 0;
char[] b = new char[1024];
while((len = br.read(b))!=-1){
bw.write(b,0,len);
bw.flush();
}
br.close();
bw.close();
}

高效字符缓冲流(使用BufferedReader和BufferedWriter读取每一行)

public static void copy9(String src,String des)throws Exception{
BufferedReader br = new BufferedReader(new FileReader(src));
BufferedWriter bw = new BufferedWriter(new FileWriter(des));
String s =null;
while((s = br.readLine())!=null){
bw.write(s);
bw.newLine();
bw.flush();
}
br.close();
bw.close();
}

持续更新...

@Fzxey

IO流文件拷贝的更多相关文章

  1. Java IO 流-- 文件拷贝

    IO流操作套路: 1.创建源: 2.选择流: 3.操作: 4.释放资源 上代码: package com.xzlf.io; import java.io.File; import java.io.Fi ...

  2. IO流-文件拷贝

    其实文件的拷贝还是文件读取写入的应用,实际是读取此路径上的文件,然后写入到指定路径下的文件. 代码举例: import java.io.*; import java.lang.*; class Tes ...

  3. java IO流文件拷贝文件(字符流标准写法)

    public static void copyFile2(String path1, String path2) { Reader reader = null; Writer writer = nul ...

  4. java IO流文件拷贝文件(字节流标准写法)

    public static void copyFile(String srcPath, String destPath) { FileInputStream fis = null; FileOutpu ...

  5. IO流-文件夹的拷贝

    文件夹的拷贝操作 要求: 完成文件夹的拷贝,包括子目录的拷贝和所有文件的拷贝 分析: 首先,得在目标目录下创建一个与源文件夹名称相同的文件夹 遍历源文件夹中的所有文件对象,判断子文件是目录还是文件 如 ...

  6. 【Android】数据存储-java IO流文件存储

    1.数据持久化:将在内存中的瞬时数据保存在存储设备中.瞬时数据:设备关机数据丢失.持久化技术提供一种机制可以让数据在瞬时状态和持久状态之间转换. 2.Android中简单的三种存储方式:文件存储.Sh ...

  7. java IO流文件的读写具体实例

    IO流的分类:1.根据流的数据对象来分:高端流:所有的内存中的流都是高端流,比如:InputStreamReader  低端流:所有的外界设备中的流都是低端流,比如InputStream,Output ...

  8. java IO流文件的读写具体实例(转载)

    引言: 关于java IO流的操作是非常常见的,基本上每个项目都会用到,每次遇到都是去网上找一找就行了,屡试不爽.上次突然一个同事问了我java文件的读取,我一下子就懵了第一反应就是去网上找,虽然也能 ...

  9. Java IO编程——文件拷贝

    在操作系统里面有一个copy命令,这个命令的主要功能是可以实现文件的拷贝处理,现在要求模拟这个命令,通过初始化参数输入拷贝的源文件路径与拷贝的目标路径实现文件的拷贝处理. 需求分析: ·需要实现文件的 ...

随机推荐

  1. 基于libcurl的GET与POST(HTTP1.1)

    #include <stdio.h> #include <curl/curl.h> bool getUrl(char *filename) { CURL *curl; CURL ...

  2. 【记录】YAML 简易入门教程

    YAML 是 "YAML Ain't a Markup Language"(YAML 不是一种标记语言)的递归缩写.在开发的这种语言时,YAML 的意思其实是:"Yet ...

  3. 17.3.12--time模块

    import time  #导入time模块 应用的时候有两种方式来表示时间: 1)时间戳 2)格式化的时间str(字符串)   3)元祖(struct_time)以及calendar 2---tim ...

  4. ZJNU 1069 - 表达式的转换——中级

    栈运用的模板题,对于符号进行出入栈操作,每次与栈顶的符号进行优先级判断,得出第一行后缀表达式. 在其后的化简计算中,每次用一个特殊符号(代码中使用了'?')代替原来的计算结果引用,并开一个数组表示每次 ...

  5. dlib安装踩过的坑

    使用到dlib时遇到了下载错误,不能正常安装 以下是成功安装的记录: 首先打开Anaconda prompt选定一个python环境,安装cmake和boost pip install cmake - ...

  6. 巧用函数,使Sql中in的用法更多变

    在Sql中我们经常会用到in 普遍的写法为 where xx in ('1','2','3') 通过函数写法为: IF EXISTS ( SELECT * FROM sys.objects WHERE ...

  7. BTree

    hash.平衡二叉树.BTree.B+tree的区别 https://blog.csdn.net/qq_40673786/article/details/90082444 联合索引在B+树上的结构介绍 ...

  8. java连接外部接口获取数据工具类

    package com.yqzj.util; import org.apache.log4j.LogManager;import org.apache.log4j.Logger; import jav ...

  9. Redis哨兵模式高可用部署和配置

    一.Redis 安装配置 1.下载redis安装包 wget http://download.redis.io/releases/redis-4.0.9.tar.gz 2.解压安装包 tar -zxv ...

  10. oracle_(第二课)监听器配置

    一. 1.首先我们得安装好oracle数据库(上一课有讲) 再来看看我们没有监听器之前的文件 文件路径:%ORACLE_HOME%/NETWORK/ADMIN 2.关闭所有防火墙,win10的要特别注 ...