2013-09-03 3 views
0

В моем приложении я хочу сохранить удаленный PDF-файл во внутреннее хранилище, чтобы ни одно другое приложение не имело к нему доступа. Кто-нибудь может помочь. Спасибо заранее.Хранить удаленный PDF в Android Внутреннее хранилище

Мой код для сохранения PDF-файл является:

  File newdir = new File(getFilesDir().getAbsolutePath(),"/n.pdf"); 
      newdir.mkdirs(); 
      try { 

       FileOutputStream fos = new FileOutputStream(newdir); 
       URL url = new URL("my_pdf_path"); 
       urlConnection = url.openConnection(); 
       urlConnection.connect(); 

       InputStream input = url.openStream(); 

       byte[] buffer = new byte[1024]; 
        int read; 
        while ((read = input.read(buffer)) != -1) { 
         fos.write(buffer, 0, read); 
        } 
        fos.close(); 
        input.close(); 



      } catch (Exception e) { 

      } 

И когда я пытаюсь получить доступ к указанному выше пути, он говорит: «Ошибка при открытии файла он не существует или не может быть прочитан.».

ответ

0

Вы можете сохранять файлы непосредственно на внутренней памяти устройства. По умолчанию файлы, сохраненные во внутреннем хранилище, являются приватными для вашего приложения, а другие приложения не могут получить к ним доступ. См. http://developer.android.com/guide/topics/data/data-storage.html#filesInternal для получения полной информации. Прочтите ответ на этот вопрос для примера java, как загрузить файл из Интернета. Android - downloading image from web, saving to internal memory in location private to app, displaying for list item

+0

Спасибо вам за быстрый ответ. Это сработало. Еще одна помощь: я попытался получить доступ к вышеуказанному сохраненному pdf через намерение. Но показал тот же «файл с открытием ошибки», который не существует или не может быть прочитан ». – user2663931

Смежные вопросы