【问题标题】:Can anyone explain the File() parameters used to download file in android?谁能解释用于在 android 中下载文件的 File() 参数?
【发布时间】:2011-01-10 00:01:38
【问题描述】:

参考thisandroid文件下载问题

谁能解释一下代码中这行是什么意思

FileOutputStream f = new FileOutputStream(new File(root,"Video.mp4"));

File() 中的参数 root 是什么意思。

我需要指定root path 来保存文件吗?

如果是这样,那么我们如何在android中指定根路径?

问候

【问题讨论】:

    标签: android file fileoutputstream


    【解决方案1】:

    File() 中的参数 root 是什么意思。我需要指定根路径来保存文件吗?如果是这种情况,那么我们如何在android中指定根路径?

    您链接的问题中的代码 sn-p 没有定义变量,但如果代码正在将文件下载到设备,我会假设它是 SD 卡上的路径。 Environment.getExternalStorageDirectory() 将为您提供 SD 卡的根路径。您还需要在清单中指定 WRITE_EXTERNAL_STORAGE 权限。

    如果您正在使用模拟器,则可以在创建模拟器映像时创建虚拟 SD 卡。

    【讨论】:

    • 我可以在不创建虚拟 SD 卡的情况下做到这一点吗?有什么办法可以将手机内存中的文件保存在内存中?
    【解决方案2】:

    java.io.File(File, String)java.io.File(String, String) 是 Java 的标准 java 构造函数。第一个参数只是父目录路径,而第二个是实际文件名。如果文件在当前工作目录中,或者您知道完整路径为一个字符串,则可以避免使用 2 个参数构造函数。

    由于您尝试下载文件,您只需通过普通 URL.openStream() 获取文件即可获取 InputStream 以获取下载文件的内容。要写出数据,您将按照链接到的示例来写内容。

    我不确定示例中指向的 root 变量是什么。不过,我无法为您提供更多帮助,因为我自己只经历了第一个 Hello, Android 示例。

    【讨论】:

    • 我正在尝试在 android 模拟器中下载文件。那么我该如何提供路径?这是android内存中的路径吗?我没有 SD 卡,我需要有一张才能在 Android 应用上保存文件吗?
    • Rob,上面的代码单独写入 root 设置的任何文件夹,如 bush34 注释。查看您之前关于如何在内部存储和 SD 卡之间进行选择的问题的最新答案:stackoverflow.com/questions/2148570/…
    猜你喜欢
    • 2017-07-14
    • 1970-01-01
    • 1970-01-01
    • 2017-04-07
    • 2015-12-21
    • 1970-01-01
    • 1970-01-01
    • 2015-11-23
    • 2013-05-23
    相关资源
    最近更新 更多