我已使用以下代码在我的android应用中创建一个临时文件:
public File streamToFile (InputStream in) throws IOException {
File tempFile = File.createTempFile("sample",".tmp");
tempFile.deleteOnExit();
FileOutputStream out = new FileOutputStream(tempFile);
IOUtils.copy(in, out);
return tempFile;
}
现在的问题是Cannot resolve symbol 'IOUtils'。 我做了一些谷歌搜索,发现使用IOUtils需要下载并包含一个jar文件。 我从这里下载了jar文件(commons-io-2.4-bin.zip)。 我将zip中名为commons-io-2.4.jar的jar添加到了包中,并尝试使用以下命令导入它:
import org.apache.commons.io.IOUtils;
它显示错误Cannot resolve symbol 'io'。 所以我试图导入它像:
import org.apache.commons.*
但是我仍然收到错误Cannot resolve symbol 'IOUtils'。
问题1:为什么会出现此错误? 怎么解决呢?
问题2:有什么方法可以在不使用外部库的情况下从InputStream创建临时文件? 还是这是最有效的方法? 我正在使用android studio。
如何将Gson依赖项添加到您的Android应用程序
对于Android Studio:
文件->项目结构...->依赖关系
点击右上角的" +",然后选择"库依赖项"
在搜索字段中输入:" org.apache.commons.io",然后单击"搜索"。
选择" org.apache.directory.studio:org.apache.commons.io:
快乐的编码:)
或将compile org.apache.directory.studio:org.apache.commons.io:2.4添加到build.gradle文件
要查看"依赖关系"选项卡,请首先单击"模块"下的"应用程序"。
有时,如果我们按照答案进行操作,则android studio不会安装依赖项。最好像@JoaquinIurchuk这样手动完成
右键单击项目导航器中的commons-io-2.4.jar文件,然后单击"添加到项目"解决了该问题。
@Zindarod我知道的最新答案,但请参阅stackoverflow.com/questions/17895557/以获取jar
对于那些在Netbeans Java项目上工作时遇到此问题的人。 我所做的是在这里下载了IO的Binaries Zip
Commons IO Util Jar在这里下载
然后右键单击我的项目>属性>
在类别窗格上,单击库
然后单击添加罐子/文件夹
找到已下载的IO Util的jar文件/文件夹。
然后单击 那固定的地雷。 :)
这个问题是用android-studio标记的,有关Netbeans的答案没有回答。
android无论如何都使用接近Java的语法。&我正在寻找在netbeans中工作时遇到的这个确切问题,netbeans曾经是在android中进行开发的IDE,似乎值得指出。上面为android-studio提供的逐步问题和必要的jar文件与在Netbeans中遇到的解决上述问题的方法非常接近。我只是在netbeans中提供了我的版本,因为在netbeans中也可能会遇到这种情况。事实是,我正在netbeans上开发此Java proj.in,以便稍后可以使用工作代码在android中部署它。