Медиа-ридер. Не удалось открыть файл. (Данный файл или каталог отсутствует)

Я пытаюсь записать короткие аудио-файлы в Android, а после воспроизведения их, используя путь к файлу. Я следовал этому коду.

Но я столкнулся со следующей проблемой метода mRecorder.setOutputFile(mFileName);

Не удалось открыть файл '/storage/emulated/0/pronouncing2017-11-07 18:20:19.800.3gp'. (Данный файл или каталог отсутствует)

и после:

11-07 18:20:27.356 11327-11344/com.apps.vmg.mynewdictionary E/MediaPlayer: error (1, -2147483648)
11-07 18:20:27.357 11327-11327/com.apps.vmg.mynewdictionary E/Add_Word_Activity: prepare() failed

Используя устройство управления файлами, я нашел этот файл и сравнил фактический путь с mFileName, и они равны

Я нашел причину этой ошибки. У меня есть метод:

private File getOutputFile() {
    return new File(Environment.getExternalStorageDirectory().getAbsolutePath() +
            "/pronouncing" + 
            new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS").format(new Date())
            + ".3gp");
}

Но так, это работает:

private File getOutputFile() {
    return new File(Environment.getExternalStorageDirectory().getAbsolutePath() +
            "/pronouncing" + "word"
//            new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS").format(new Date())
            + ".3gp");
}

1 ответ

Решение

Итак, теперь я уверен, что медиаплеер не может прочитать файл, в названии которого содержится дата в формате "гггг-мм-дд чч: мм: сс.SSS".

С форматом "гггг-мм-дд-чч.мм.сс" все отлично работает

Другие вопросы по тегам