目录

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. 第一个struts2框架

    编写步骤: 1.导入有关的包. 2.编写web.xml文件 3.写Action类 4.编写jsp 5.编写struts.xml web.xml <?xml version="1.0&q ...

  2. 69)stack和queue操作

    操作和vector类似  直接看 vector就行了 或者看笔记  C++进阶课程讲义

  3. 微服务项目开发学成在线_day01_CMS服务端开发

    05-CMS需求分析-什么是CMS 什么是CMS?CMS (Content Management System)即内容管理系统,不同的项目对CMS的定位不同.CMS有哪些类型? 每个公司对每个项目的C ...

  4. AtCoder - 4371 Align(分类讨论)

    Align AtCoder - 4371 Problem Statement You are given N integers; the i-th of them is Ai. Find the ma ...

  5. cin cout

    编写一个程序,要求用户输入一串整数和任意数目的空格,这些整数必须位于同一行中,但允许出现在该行的任何位置.当用户按下enter键,数据输入停止.程序自动对所有的整数进行求和并打印出结果. 需要解决两个 ...

  6. win10下挂载efi分区

    管理员身份打开cmd 1.输入diskpart, 2.输入list disk,列出所有的disk 3.select disk xxx,xxx代表你要选的disk 数字,比如:select disk 0 ...

  7. ubuntu14 中文显示问号

    1 终端执行 sudo locale-gen zh_CN.UTF-8 2 终端执行 export LC_ALL=zh_CN.UTF-8

  8. WdatePicker插件知识整理(一)

    当WdatePicker.js里的属性:$wdate=true时,在input里加上class="Wdate"就会在选择框右边出现日期图标,如果您不喜欢这个样式,可以把class= ...

  9. Dcoker 部署Tomcat+redis+war

    1.首先安装redis docker run –name my-redis -d redis 2.安装tomcat并启动 docker run -p 8383:8383 –name tomcat -v ...

  10. ipv6 mac地址转化为linklocal地址

    mac  3c:32:66:67:dd:46 linklocal地址 前六位固定  fe80:: 第七位  mac地址第一个byte进行如下计算 (byte) ((byte) (macbyte &am ...