Конвертировать byteArray из fileInputStream - PullRequest
2 голосов
/ 21 октября 2019

Я хочу прочитать огромный файл (больше ГБ) и преобразовать его в байтовый массив, чтобы сохранить файл в дБ.

Проблема, с которой я сталкиваюсь, заключается в том, когда я конвертирую файл в байтовый массив или читая файля получаю исключение времени выполнения кучи памяти Java

Я хочу знать, каков наилучший способ прочитать файл и преобразовать его в массив байтов, не используя больше памяти

Я гуглил, я обнаружил, чтоIOUtils обеспечивают лучшую производительность, но я пытался помочь мне. Я использую Java 8

private void readFile() throws IOException {

        FileInputStream fileInputStream = null;
        try {
            fileInputStream = new FileInputStream("C:\test.mp4")
            byte[] bytes = IOUtils.toByteArray(fileInputStream);
            Base64 codec = new Base64();
            byte[] decoded = codec.encode(bytes);

                                            fileInputStream.close();
}

Можете ли вы помочь преобразовать этот файл в байтовый массив с наилучшим подходом?

...