将远程PDF存储到Android内部存储

时间:2013-09-03 05:22:33

标签: android

在我的应用程序中,我想将远程pdf存储到内部存储,以便其他应用程序无法访问它。谁能请帮忙。 提前谢谢。

我存储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) {

            }

当我尝试访问上述路径时,它会说:“打开文件时出错。它不存在或无法读取”。

1 个答案:

答案 0 :(得分:0)

您可以直接在设备的内部存储上保存文件。默认情况下,保存到内部存储的文件对您的应用程序是私有的,而其他应用程序无法访问它们。有关详细信息,请参阅http://developer.android.com/guide/topics/data/data-storage.html#filesInternal。阅读此问题的答案,获取有关如何从Web下载文件的Java示例。 Android - downloading image from web, saving to internal memory in location private to app, displaying for list item