Android导入java.nio.file.Files;无法解决

时间:2014-07-21 15:52:10

标签: java android java-7

我正在尝试新的Gmail API,示例使用java.nio.file包中的类,e.i。 FilesFileSystems

这些类是在Java jdk 1.7中引入的,因为我在我的Android应用程序中运行jdk 1.7.0_65,我不知道为什么Android Studio找不到这些类。

导入是:

import java.nio.file.FileSystems;
import java.nio.file.Files;

我的build.gradle文件当然告诉系统使用v.1.7这样

android {
    compileSdkVersion 19
    buildToolsVersion '20'
    ...
    compileOptions {
        sourceCompatibility JavaVersion.VERSION_1_7
        targetCompatibility JavaVersion.VERSION_1_7
    }
}

我指向jdk的正确目录:

enter image description here

jdk列在外部库部分:

enter image description here

如果我浏览Java文件,我甚至可以找到java.nio.file.Files和.FileSystems:

enter image description here

现在,****正在发生什么!?根据我的理解,我正在做这里的一切,有什么建议吗?

3 个答案:

答案 0 :(得分:62)

Android不提供“传统java”必须提供的所有类。 Files是Android不提供的类之一。

您可以在此处查看Android中可用的课程:http://developer.android.com/reference/classes.html

所以不幸的是,你必须使用其他函数/类来实现相同的功能。

PS:您的屏幕截图中显示了该类,因为您浏览了 PC 上安装的java类,而不是Android手机/平板电脑上可用的类

更新

从API版本26开始,Files / FileSystem类已经可用。

答案 1 :(得分:11)

答案 2 :(得分:1)

看看这个Link Android支持某些类的NIO包而不是完整的类。但是如果你需要快速编写代码,你也可以使用apache-commons api。