Java IO流的写入和写出操作 FileInputStream和FileOutputStream
今天学习了Java的IO流,关于文件的读入和写出,主要是FileInputStream和FileOutputStream来实现,这两个流是字节流。还有字符流(FileReader和FileWriter),字符流只能处理文本文件,字节流可以处理图片,视频等。
话不多说,直接上代码。代码实现了一个文件的拷贝操作。
@Test
    public void test() {
        long start = System.currentTimeMillis();
String src = "F:/ioStudy/file1/1.txt";
        String dest = "F:/ioStudy/file2/2.txt";
CopyFile(src, dest);
long end = System.currentTimeMillis();
System.out.println("拷贝文件花费的时间为:" + (end - start) + "毫秒!");
    }
    /**
     * 把src文件内容,拷贝到dest文件里
     * @param src
     * @param dest
     */
    private void CopyFile(String src, String dest) {
        // 声明读取和写入的文件
        File fileRead = new File(src);
        File fileWrite = new File(dest);
FileInputStream fileInputStream = null;
        FileOutputStream fileOutputStream = null;
try {
            fileInputStream = new FileInputStream(fileRead);
            fileOutputStream = new FileOutputStream(fileWrite);
byte[] read = new byte[1024];// 文件和图片,这个放可以设置的大一点
            int length;
            // 开始读取
            while ((length = fileInputStream.read(read)) != -1) {
                // 开始写入
                fileOutputStream.write(read, 0, length);
            }
        } catch (Exception e) {
            e.printStackTrace();
        } finally {
            if (null != fileInputStream) {
                try {
                    fileInputStream.close();
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
            if (null != fileOutputStream) {
                try {
                    fileOutputStream.close();
                } catch (Exception e) {
                    e.printStackTrace();
                }
            }
        }
    }
这里做几点说明:
1、读取的文件一定要存在,否则会报错(java.io.FileNotFoundException)。
2、写入的文件可以不存在,但是文件的上层目录一定要存在,否则也会报错(java.io.FileNotFoundException)。
3、文件写完之后,一定要调用流的close()方法,关闭流,否则写入的文件内容会是空的。
Java IO流的写入和写出操作 FileInputStream和FileOutputStream的更多相关文章
- java io流 创建文件、写入数据、设置输出位置
		java io流 创建文件 写入数据 改变system.out.print的输出位置 //创建文件 //写入数据 //改变system.out.print的输出位置 import java.io.*; ... 
- Java:IO流与文件基础
		Java:IO流与文件基础 说明: 本章内容将会持续更新,大家可以关注一下并给我提供建议,谢谢啦. 走进流 什么是流 流:从源到目的地的字节的有序序列. 在Java中,可以从其中读取一个字节序列的对象 ... 
- java IO流详解
		流的概念和作用 学习Java IO,不得不提到的就是JavaIO流. 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输 ... 
- Java IO流学习总结
		Java流操作有关的类或接口: Java流类图结构: 流的概念和作用 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输 ... 
- Java IO流系统整理
		Java IO流的分类 Java中的流,可以从不同的角度进行分类. 按流向分类: 输入流: 程序可以从中读取数据的流.输出流: 程序能向其中写入数据的流. 按数据传输单位分类: 字节流:以字节(8位二 ... 
- Java IO流详尽解析
		流的概念和作用 学习Java IO,不得不提到的就是JavaIO流. 流是一组有顺序的,有起点和终点的字节集合,是对数据传输的总称或抽象.即数据在两设备间的传输称为流,流的本质是数据传输,根据数据传输 ... 
- JAVA.IO流学习笔记
		一.java.io 的描述 通过数据流.序列化和文件系统提供系统输入和输出.IO流用来处理设备之间的数据传输 二.流 流是一个很形象的概念,当程序需要读取数据的时候,就会开启一个通向数据源的流,这个数 ... 
- 【Java基础】Java IO流的总结
		Java IO流分为输入流和输出流,而输入流和输出流中又分字符流和字节流.顾名思义,输入流则是输入到程序中计算,输出流是把程序的结果输出到文件或者设备.而字符流输入输出以字符为单位,字节流则是以字节为 ... 
- 【转载】JAVA IO 流的总结
		来自http://www.cnblogs.com/oubo/archive/2012/01/06/2394638.html,写的很详细 Java流操作有关的类或接口: Java流类图结构: 流的概念和 ... 
随机推荐
- 从0开始搭建一个阿里云java部署环境
			一.购买服务器 https://www.aliyun.com/daily-act/ecs/activity_selection?spm=5176.8112568.738194.8.674c9ed53Y ... 
- Adobe Premiere Pro 2020破解教程
			首先官网下载Adobe Creative Cloud,安装完之后使用它继续安装Pr.注意在安装之前,点击文件→首选项,先设置一下你的安装路径,没有设置则默认安装在C盘. 接着下载网上良心博主推荐的破解 ... 
- 2.5D地图系统技术方案
			1. 2.5D地图概述 1.1. 概述 2.5维地图就是根据dem.dom.dlg等数据,以及真三维模型在一定高度.视角和灯光效果,按照轴侧投影的方式生成的地图.本文以臻图信息ZTMapE ... 
- 2020 webstorm 最新激活方式 有效期2021年11月 可用
			MIIElT25XE-eyJsaWNlbnNlSWQiOiJPUVQzT0oyNVhFIiwibGljZW5zZWVOYW1lIjoi5rC45LmF5r+A5rS7IGlkZWEubWVkZW1pb ... 
- Iterm2 快捷操作
			窗口操作 新建窗口:Command + N 关闭所有窗口:Shift + Command + W 窗口之间切换 前一个窗口: Command + [ 后一个窗口:Command + ] 进入窗口1,2 ... 
- win10安装docker 和 splash
			参考链接1:https://www.cnblogs.com/321lxl/p/9536616.html 参考链接2:https://blog.csdn.net/qq_18831501/article/ ... 
- python基础学习day7
			基础数据类型的补充:编码的进阶 str capitalize() 首字母(第一个单词)大写,其余变小写 s1 = 'I LIVE YOU' print(s1.capitalize()) >> ... 
- 【Linux】linux系统管理---好用的一些开源工具
			目录 linux系统管理---好用的一些开源工具 htop dstat Glances iftop nethogs iotop linux系统管理---好用的一些开源工具 htop htop是一款运行 ... 
- ui自动化chrome文件上传操作
			web自动化,再chrome浏览器中文件上传操作 
- VS配置C++依赖包
			处理好三个东西 1.头文件,Configuration Properties → VC++ Directories → Include Directories 2.静态库,Configuration ... 
