首页 > 其他分享 >IO2 - 文件复制

IO2 - 文件复制

时间:2023-01-04 14:34:08浏览次数:32  
标签:文件 TODO IO2 复制 File new data out

文件复制

基本的文件流传输

  • 问题:效率不高,每次只能传输一个数据,大量数据传输时需要反复开关阀门
public class FileCopy {
    public static void main(String[] args) throws Exception{

        //TODO IO 文件复制

        //数据源文件对象
        File srcFile = new File("E:\\.就业\\code\\day1\\IO_File\\test.txt");

        //数据目的文件对象(自动生成)
        File destfile = new File("E:\\.就业\\code\\day1\\IO_File\\test.txt.copy");

        //TODO FileInputStream 文件输入流(管道对象)
        FileInputStream in = null;
        //TODO FileOutputStream 文件输出流(管道对象)
        FileOutputStream out = null;

        try{
            in = new FileInputStream(srcFile);
            out = new FileOutputStream(destfile);

            //每一打开阀门只传输一个数据
            //TODO .read()  打开阀门,流转数据(输入数据到管道)
            //int data = in.read();
            //TODO .write(data)  打开阀门,流转数据(从管道输出数据)
            //out.write(data);
            //如果文件数据全部读取后,再读取,则读取结果为 -1 (表示无效-结尾)

            int data = -1;
            while ((data = in.read()) != -1){
                out.write(data);
            }

        }catch (IOException e){
            throw new RuntimeException(e);
        }finally {
            //TODO 关闭管道
            if(in != null){
                try {
                    in.close();
                }catch (IOException e){
                    throw new RuntimeException(e);
                }
            }
            if(out != null){
                try {
                    out.close();
                }catch (IOException e){
                    throw new RuntimeException(e);
                }
            }
        }
    }
}

标签:文件,TODO,IO2,复制,File,new,data,out
From: https://www.cnblogs.com/Ashen-/p/17024722.html

相关文章

  • git合并分支时禁止合并特定文件
    开发过程中经常会遇到这样的场景,一个项目可能有develop(开发环境)、release(生产环境)等多个分支,经常需要对分支进行合并,但是不同分支下的一些配置文件可能会有所不同,比如......
  • IO1 - 文件
    IO-文件IO=数据+流操作数据源->Input->Stream(管道-流转)->Output-数据目的地Java学习的重点=Input+Stream+OutputStream不唯一、不相同文件......
  • 直播软件搭建,vue 复制剪切板功能
    直播软件搭建,vue复制剪切板功能第一种:利用document.execCommand()这个方法执行浏览器复制领命  <template>  <divclass="seller-box"@click="Copy('我要复制......
  • IIS修改最大上传文件限制的方法
    我们在修改PageAdmin网站管理系统的附件上传大小时候,经常出现修改后还是上传不了大文件,这是因为服务器系统本身的限制导致的,下面分别对IIs6和IIs7的修改方法作详细介绍。IIS......
  • Windows中IIS7设置上传文件大小限制
    IIS7默认文件上传大小时限制30M。要突破这个限制:1.修改IIS的applicationhost.config打开%windir%\system32\inetsrv\config\applicationhost.config找到:<requestFilter......
  • Java 合并PDF文件
    这篇文章主要介绍如何在Java应用程序中实现将多个PDF文件合并为一个PDF的功能。使用组件:Spire.PDFforJava使用以下代码前,需要下载​​Spire.PDFforJava​​包并解压,然后......
  • python调用项目外py文件问题及解决方案
    问题来源:为了支持模型的切换功能,拟通过调用不同模型路径下的predict.py方法来实现。这就涉及到调用外部py文件。调用外部py文件,有多种方式:方法一:sys.path1impo......
  • Linux系统查看文件地址常用的命令详解!
    在Linux系统中,是可以查看文件地址的,而且通过命令就可以完成,其中常见的命令是:whereis命令和which命令。那么Linux如何查看文件地址?本文为大家介绍一下详细的方法,快来看......
  • JAVA问题总结之28--读取某目录下所有文件
    JAVA问题总结之28–读取某目录下所有文件packagejava9231;importjava.io.File;publicclassforReadNFile{publicstaticvoidmain(String[]args){//TOD......
  • Linux学习5之shell显示当前目录下所有的文件和文件夹
    hadoop@Mcnode4:~/cloud/adam/xubo/data/test20160310/bwa3sh/test142234$catshowFileAndDirectory.sh#!/bin/bashdir=$(ls-l./|awk'!/^d/{print$NF}')foriin$d......