Загрузка файла PDF - PullRequest
       1

Загрузка файла PDF

1 голос
/ 05 декабря 2011

В моем приложении пользователь должен загрузить PDF-файл с URL-адреса и сохранить его на SDCard. Но подвох в том, что я могу использовать DefaultHttpClient только для доступа к URL. Я нашел пару решений, но ни один не использовал DefaultHttpClient. После загрузки PDF я также хотел бы просмотреть PDF в своем приложении.

Ответы [ 3 ]

4 голосов
/ 05 декабря 2011

// используйте этот метод для загрузки pdf файла

 public void downloadPdfContent(String urlToDownload){

             try {

                 String fileName="xyz";
             String fileExtension=".pdf";

//           download pdf file.

                URL url = new URL(urlToDownload);
                HttpURLConnection c = (HttpURLConnection) url.openConnection();
                c.setRequestMethod("GET");
                c.setDoOutput(true);
                c.connect();
                String PATH = Environment.getExternalStorageDirectory() + "/mydownload/";
                File file = new File(PATH);
                file.mkdirs();
                File outputFile = new File(file, fileName+fileExtension);
                FileOutputStream fos = new FileOutputStream(outputFile);
                InputStream is = c.getInputStream();
                byte[] buffer = new byte[1024];
                int len1 = 0;
                while ((len1 = is.read(buffer)) != -1) {
                    fos.write(buffer, 0, len1);
                }
                fos.close();
                is.close();

               System.out.println("--pdf downloaded--ok--"+urlToDownload);
            } catch (Exception e) {
                e.printStackTrace();

            }
    }

// для просмотра pdf используйте этот метод

private void onPdfClick()
    {

//      String pdfFile = Environment.getExternalStorageDirectory()+ File.separator + AstroManager.file.getName();

         Intent intent = new Intent(Intent.ACTION_VIEW);
         intent.setDataAndType(Uri.fromFile(new File("/sdcard/mydownload/xyz.pdf"), "application/*");

         startActivity(intent);
    }
1 голос
/ 05 декабря 2011

Если вам нужно открыть файл pdf, на вашем устройстве должна быть установлена ​​программа для чтения PDF. В противном случае на экране появится пустой экран. Также здесь является хорошим примером для загрузки pdf с сервера и просмотра его содержимого .

0 голосов
/ 05 декабря 2011

см. http://developer.android.com/reference/org/apache/http/client/methods/HttpGet.html для получения данных из URL с DefaultHttpClient

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...