[JAVA]使用字节流拷贝文件

import java.io.*;

/**
 * @Description:
 * @projectName:JavaTest
 * @see:PACKAGE_NAME
 * @author:郑晓龙
 * @createTime:2019/5/3 0:45
 * @version:1.0
 */
public class CopyWithBytes {
    public static void main(String[] args) {
        byte[] bytes = readFileToByteArray("d:/abc.txt");
        writeByteArrayToFile(bytes,"d:/23123.txt");
    }

    public static byte[] readFileToByteArray(String src) {
        // 文件输入流(需要关闭)
        InputStream is = null;
        try {
            is = new FileInputStream(new File(src));
            // 字节数组输出流(不需要关闭)
            ByteArrayOutputStream baos = new ByteArrayOutputStream();
            byte[] buf = new byte[1024 * 1];
            int len;
            while ((len = is.read(buf)) != -1) {
                baos.write(buf, 0, len);
            }
            baos.flush();
            return baos.toByteArray();
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if (is != null) {
                try {
                    is.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
        return null;
    }

    public static void writeByteArrayToFile(byte[] datas, String destFileName) {
        // 文件输出流(需要关闭)
        OutputStream os = null;
        try {
            // 字节数组输入流(不需要关闭)
            InputStream is = new ByteArrayInputStream(datas);
            os = new FileOutputStream(new File(destFileName));

            byte[] buf = new byte[1024];
            int len;
            while (((len = is.read(buf)) != -1)) {
                os.write(buf, 0, len);
            }
            os.flush();
        } catch (FileNotFoundException e) {
            e.printStackTrace();
        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if (os != null){
                try {
                    os.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }
}

原文地址:https://www.cnblogs.com/zhengxl5566/p/10804085.html

时间: 2024-10-16 21:53:23

[JAVA]使用字节流拷贝文件的相关文章

JAVA 以字节流读取文件中的BMP图像

用字节流而不是用JAVA的API函数read()有助于大家理解理解BMP的存储方式哈. 同时,从SQL中读取图片的话,也是用字节流读取,需要自己进行转换的. 顺便保存下代码...下次用就有模板了... 只有24位图的哈.   public Image myRead(String path) throws java.io.IOException {     Image image = null;       int biWidth,biHeight,bicount,biSizeImage,npad

[JAVA]字节流拷贝文件

import java.io.*; public class CopyFile { public static void main(String[] args) { //1.创建源 File in = new File("d:/test/1111.mp4"); File out = new File("d:/test/222.mp4"); //2.选择流 InputStream is = null; OutputStream os = null; try { //3

java使用字节流操作文件

概述:摘录下统计的常用的字节流操作情况,很全面,值得看看! 一.IO流(字节流File读写文件) 1 import java.io.*; 2 public class FileStream { 3 4 public static void main(String[] args) throws IOException{ 5 6 } 7 8 public static void readFile_1() throws IOException{ 9 FileInputStream fis=new Fi

java 简单的拷贝文件夹

import java.io.File; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.IOException; class Wenjian implements Runnable{ static String str="C:\\Users\\cdlx2016\\Desktop\\实验"; stat

【Java】字节流-从文件输入,输出到文件

假如需要复制一张图片,一份word,一个rar包.可以以字节流的方式,读取文件,然后输出到目标文件夹. 以复制一张4M的图片举例. 每次读一个字节: ch = (char)System.in.read(); //读入一个字符,返回读到的字节的int表示方式,读到末尾返回-1 复制时候一个字节一个字节的读取.写入,这样是很慢的.设置一个用来缓冲的字符数组,会让复制的过程快很多(每次读入的字节变多). 方便阅读,类的名称用中文描述 import java.io.*; public class 字节流

Java字节流实现文件夹的拷贝

import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; import java.io.OutputStream; /** · java字节流实现文件夹的拷贝 · 拷贝文件夹,其中文件夹中又有多个文件 · 1.先遍历这个文件夹,判断是否是目录 · 2.创建文件夹 · 3.拷

java使用字节流和字符流实现文件复制

大家在Java开发中都会遇到文件复制的文件,众所周知,需要通过文件输入输出流实现. 那究竟该怎么做那,话不多说,直接上代码: 一,使用字节流复制文件 public class FileByteCopy {public static void main(String[] args) { FileByteCopy f= new FileByteCopy(); try { f.copy("d:/File/1.txt","d:/CopyFile/1.txt"); } cat

10.java拷贝文件夹

文件复制 文件夹拷贝 文件复制 文件复制步骤: 1.建立文件代理->File源文件/File目的文件 2.设立管道,建立管道 3.数据装箱 4.循环读取,循环输出 5.关闭流 package 文件夹的拷贝; import java.io.File; import java.io.FileInputStream; import java.io.FileOutputStream; import java.io.IOException; import java.io.InputStream; impo

java中用IO流,拷贝文件夹中的文件

package 拷贝文件; import java.io.File; import java.io.FileFilter; import java.io.FileInputStream; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.io.FilenameFilter; import java.io.IOException; import java.io.InputStream