Я звоню вам за помощью, я застрял в своем проекте android и не могу найти решение.
Пояснение:
Я получаю файл .ics (iCalendar) из URL-адреса на inte rnet с помощью Apache Common библиотеки, используя FileUtils.copyURLToFile (url, file). Он работает очень хорошо, мой файл создан с моими данными и доступен для чтения.
Я сохраняю свой файл в по пути : / storage / emulated / 0 / Android / data / MyApplication / MyFile.ics.
Я вижу это в файлах телефона (Android P ie) и / или эмулятор (Android Oreo) по этому адресу. Итак, он хорошо создан и присутствует.
Но когда я хочу проанализировать свой файл с помощью библиотеки iCal4j, я получаю сообщение об ошибке в строке, содержащей FileInputStream, о том, что мой файл или каталог не существует по этому адресу .
РЕДАКТИРОВАТЬ Я указываю, что проверяю, существует ли мой файл, с помощью file.exist (). Если он существует, он вызывает функцию для анализа моего файла. Если у меня проблема с FileInputStream. Итак, да, file.exist () сообщает мне, что он существует.
File file = new File(Environment.getExternalStorageDirectory() + "/Android/data/MyApplication/MyFile.ics");
FileInputStream fin = new FileInputStream(file.getPath());
CalendarBuilder builder = new CalendarBuilder();
Calendar calendar = builder.build(fin);
Я получаю одну ошибку.
Мои ошибки:
W/System.err: java.io.FileNotFoundException: /storage/emulated/0/Android/data/MyApplication/MyFile.ics (No such file or directory)
at java.io.FileInputStream.open0(Native Method)
at java.io.FileInputStream.open(FileInputStream.java:200)
at java.io.FileInputStream.<init>(FileInputStream.java:150)
at java.io.FileInputStream.<init>(FileInputStream.java:103)
Мой манифест. xml:
<uses-permission android:name="android.permission.INTERNET"/>
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
и я также спросил у пользователя разрешение на доступ к хранилищу:
requestPermissions(new String[]{WRITE_EXTERNAL_STORAGE,READ_EXTERNAL_STORAGE}, 1);
Надеюсь Я был достаточно ясным, чтобы получить помощь, спасибо.