Назначенный путь к выбранному файлу пуст при попытке прочитать его в байтовом массиве - PullRequest
0 голосов
/ 04 марта 2019

Итак, я хочу выбрать файл в Android и после выбора я хочу прочитать байты в массив байтов.Но когда я пытаюсь прочитать байты, я получаю ошибку: java.io.FileNotFoundException: /document/1358 (No such file or directory).Вот мой код:

@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
    switch(requestCode) {
        case ACTIVITY_CHOOSE_FILE: {
            if (resultCode == RESULT_OK) {
                Uri uri = data.getData();
                String filePath = uri.getPath();
                File file = new File(filePath);
                int size = (int) file.length();
                byte[] bytes = new byte[size];

                try {
                    BufferedInputStream buf = new BufferedInputStream(new FileInputStream(file)); //error??
                    buf.read(bytes, 0, bytes.length);
                    buf.close();
                } catch (IOException e) {
                    e.printStackTrace();
                }
            }
        }
    }

}

Это мой код для открытия цели:

Intent chooseFile;
Intent intent;
chooseFile = new Intent(Intent.ACTION_GET_CONTENT);
chooseFile.setType("*/*");
intent = Intent.createChooser(chooseFile, "Choose a file");
startActivityForResult(intent, ACTIVITY_CHOOSE_FILE);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...