Java Android BufferedReader尝试使用资源
希望这次我能清楚地问出我的问题,我的最后一个问题让我很尴尬,所以我不得不删除它 这段代码来自我为我的应用程序编写的记录器。当我在EclipseLuna中编写此代码时,我在下面的try()语句中没有收到任何错误,但是当我将代码插入Android Studio时,我收到了一个“不兼容类型”错误。它声明找到的类型为“java.io.BufferedReader”,预期为“java.lang.AutoCloseable”。我错过了什么Java Android BufferedReader尝试使用资源,java,android,bufferedreader,Java,Android,Bufferedreader,希望这次我能清楚地问出我的问题,我的最后一个问题让我很尴尬,所以我不得不删除它 这段代码来自我为我的应用程序编写的记录器。当我在EclipseLuna中编写此代码时,我在下面的try()语句中没有收到任何错误,但是当我将代码插入Android Studio时,我收到了一个“不兼容类型”错误。它声明找到的类型为“java.io.BufferedReader”,预期为“java.lang.AutoCloseable”。我错过了什么 File filePointer = new File(logFil
File filePointer = new File(logFile);
boolean bool = false;
bool = filePointer.exists();
String ls = System.getProperty("line.separator");
if(bool == true) {
try (BufferedReader br = new BufferedReader(new FileReader(logFile))) {
StringBuilder sb = new StringBuilder();
String line = br.readLine();
while(line != null){
sb.append(line);
sb.append(ls);
line = br.readLine();
}
copiedFile = sb.toString();
}
finally{
br.close();
}
}
检查您的最低API级别。直到API 19,Android才添加了
java.lang.AutoCloseable
接口。因此,除非您使用Java 7进行构建,并且您的minSdkVersion
设置为19,否则Java 7的“尝试使用资源”功能不可用。它可能会给您带来错误。您可能需要更新JRE编译以至少支持JRE 1.7My,“源代码兼容性”设置为1.7。另外,我使用的JDK是1.8.0。相关?错误似乎已经消失了!谢谢你。我不熟悉Java、Android和一般编程。我的任务是为我们公司开发一个基本的应用程序,我正在慢慢地学习各个方面。在以前版本的Android 19中,是否有另一个类可以取代BufferedReader?BufferedReader
从API 1开始就在框架中,这不是新的。这篇文章中的新内容是try with resources特性(例如,try
关键字后面的语句,它创建了BufferedReader
)