как прочитать байты из видеофайла в Android

#android

#Android

Вопрос:

У меня есть вопрос, что я хочу прочитать байты из видео, хранящегося на sdcard, размером 1024 фрагмента, это означает, что я должен прочитать 1024 байта из файла за раз. Я могу получить количество байтов из видео, но я не могу получить его по частям, я не знаю, как этого добиться. Пожалуйста, предложите мне правильное решение относительно того же.

Заранее спасибо.

Комментарии:

1. Это то же самое, что чтение из любого другого файла — найдите любое руководство по вводу файлов Java.

Ответ №1:

 import java.io.*;

public class FileUtil {
    private final int BUFFER_SIZE = 1024;

    public void readFile(String fileName) {

        BufferedInputStream in = null;
        try {
            in = new BufferedInputStream(new FileInputStream(fileName));
        } catch (FileNotFoundException e) {
            e.printStackTrace();
            return;
        }

        byte[] buffer = new byte[BUFFER_SIZE];

        try {
            int n = 0;
            while ((n = in.read(buffer, 0, BUFFER_SIZE)) > 0) {
                /* do whatever you want with buffer here */
            }
        }
        catch(Exception e) {
            e.printStackTrace();
        }
        finally { // always close input stream
            try {
                in.close();
            } catch (IOException e) {
                e.printStackTrace();
            }
        }
    }
}
  

На основе кода из http://www.xinotes.org/notes/note/648

Комментарии:

1. Код в порядке, но я не могу понять, почему что-то подобное должно принадлежать статическому служебному методу.