開発者ドキュメント

Java – byte[]をファイルに保存する方法

byte[]をファイルに保存するには、次のようにしてください:

  FileOutputStream fos = new FileOutputStream(fileDest);
  fos.write(bytesArray);
  fos.close();

またはNIO

  Path path = Paths.get(fileDest);
  Files.write(path, bytesArray);

完全な例

このJavaの例では、ファイルをバイト配列に読み込んで、古典的なtry-catch-try-catch、JDK 7のtry-resourcesおよびJava.NIOソリューションを使用してバイト配列を新しいファイルに保存する方法を示します。

ArrayOfBytesToFile.java

package com.mkyong;

import java.io.File;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Path;
import java.nio.file.Paths;

public class ArrayOfBytesToFile {

    private static final String UPLOAD__FOLDER = "C:\\temp\\";

    public static void main(String[]args) {

        FileInputStream fileInputStream = null;

        try {

            File file = new File("C:\\temp\\testing1.txt");
            byte[]bFile = new byte[(int) file.length()];

           //read file into bytes[]            fileInputStream = new FileInputStream(file);
            fileInputStream.read(bFile);

           //save bytes[]into a file
            writeBytesToFile(bFile, UPLOAD__FOLDER + "test1.txt");
            writeBytesToFileClassic(bFile, UPLOAD__FOLDER + "test2.txt");
            writeBytesToFileNio(bFile, UPLOAD__FOLDER + "test3.txt");

            System.out.println("Done");

        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if (fileInputStream != null) {
                try {
                    fileInputStream.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }

        }
    }

   //Classic, < JDK7
    private static void writeBytesToFileClassic(byte[]bFile, String fileDest) {

        FileOutputStream fileOuputStream = null;

        try {
            fileOuputStream = new FileOutputStream(fileDest);
            fileOuputStream.write(bFile);

        } catch (IOException e) {
            e.printStackTrace();
        } finally {
            if (fileOuputStream != null) {
                try {
                    fileOuputStream.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }

    }

   //Since JDK 7 - try resources
    private static void writeBytesToFile(byte[]bFile, String fileDest) {

        try (FileOutputStream fileOuputStream = new FileOutputStream(fileDest)) {
            fileOuputStream.write(bFile);
        } catch (IOException e) {
            e.printStackTrace();
        }

    }

   //Since JDK 7, NIO
    private static void writeBytesToFileNio(byte[]bFile, String fileDest) {

        try {
            Path path = Paths.get(fileDest);
            Files.write(path, bFile);
        } catch (IOException e) {
            e.printStackTrace();
        }

    }

}

参考文献

  1. link://java/変換するファイルの配列への変換方法/[変換方法

ファイルをバイトの配列に入れる]。

https://docs/

JavaDoc]

リンク://タグ/配列のバイト/[配列のバイト]

ファイル


java.io


java.nio

モバイルバージョンを終了