0

在我的应用程序中,我想将远程 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) {

            }

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

4

1 回答 1

0

您可以将文件直接保存在设备的内部存储中。默认情况下,保存到内部存储的文件对您的应用程序是私有的,其他应用程序无法访问它们。有关完整详细信息,请参阅http://developer.android.com/guide/topics/data/data-storage.html#filesInternal。阅读此问题的答案,了解如何从 Web 下载文件的 java 示例。Android - 从网络下载图像,保存到应用程序私有位置的内部存储器,显示列表项

于 2013-09-03T05:37:00.830 回答