将文件下载到内部存储



我的应用程序出现了一些问题。

我想下载这些文件,然后将它们保存到我的应用程序可提取文件夹中,但由于应用程序是只读的,所以这不是一个选项,我想将下载的文件保存到内部存储中,这样只有我的应用才能访问它们
如果我不能直接将文件下载到内部存储器,我可以从下载文件夹中读取,然后将其保存到内部存储器吗?

无论哪种方式,我都有下载方法,我只需要知道在哪里保存下载的文件,以及如何在运行时访问它,并将其持久存储在内部存储中。

试着看看

_context.getFilesDir();

_context.getExternalFilesDir();

/***将私有原始资源内容复制到公共可读的*使得后者可以与其他应用程序共享。*/

private void copyPrivateRawResourceToPubliclyAccessibleFile() {
    InputStream inputStream = null;
    FileOutputStream outputStream = null;
    try {
        inputStream = getResources().openRawResource(R.raw.robot);
        outputStream = openFileOutput(SHARED_FILE_NAME,
                Context.MODE_WORLD_READABLE | Context.MODE_APPEND);
        byte[] buffer = new byte[1024];
        int length = 0;
        try {
            while ((length = inputStream.read(buffer)) > 0){
                outputStream.write(buffer, 0, length);
            }
        } catch (IOException ioe) {
            /* ignore */
        }
    } catch (FileNotFoundException fnfe) {
        /* ignore */
    } finally {
        try {
            inputStream.close();
        } catch (IOException ioe) {
           /* ignore */
        }
        try {
            outputStream.close();
        } catch (IOException ioe) {
           /* ignore */
        }
    }
}

相关内容

  • 没有找到相关文章

最新更新