Как получить URI из файла актива? - PullRequest
106 голосов
/ 27 января 2011

Я пытался получить путь URI для файла актива.

uri = Uri.fromFile(new File("//assets/mydemo.txt"));

Когда я проверяю, существует ли файл, я вижу, что файл не существует

File f = new File(filepath);
if (f.exists() == true) {
    Log.e(TAG, "Valid :" + filepath);
} else {
    Log.e(TAG, "InValid :" + filepath);
}

Может кто-нибудь сказать мне, как я могу указать абсолютный путь к файлу, существующему в папке ресурсов

Ответы [ 11 ]

0 голосов
/ 27 июня 2015

Да, вы не можете получить доступ к папке на вашем диске с телефона или эмулятора Android, потому что ваш компьютер и Android - две разные ОС. Я бы выбрал папку res на Android, потому что она имеет хорошие методы управления ресурсами. До тех пор, пока у вас не будет очень веской причины поместить файл в папку активов. Вместо этого вы можете сделать это

try {
      Resources res = getResources();
      InputStream in_s = res.openRawResource(R.raw.yourfile);

      byte[] b = new byte[in_s.available()];
      in_s.read(b);
      String str = new String(b);
    } catch (Exception e) {
      Log.e(LOG_TAG, "File Reading Error", e);
 }
...