我使用以下代码在我的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文件。我从 here (commons-io-2.4-bin.zip)下载了jar文件。我将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。
答案 0 :(得分:95)
对于Android Studio:
快乐编码:)
答案 1 :(得分:7)
右键点击项目导航器中的commons-io-2.4.jar
文件,然后点击'添加到项目'解决了这个问题。
答案 2 :(得分:2)
对于那些在Netbeans Java项目中遇到这种情况的人。我做的是我在这里下载了IO的Binaries Zip
Commons IO Util Jar Download Here
然后右键点击我的项目>属性>
在“类别”窗格上,单击“库”
然后单击“添加Jar /文件夹”
找到已下载的解压缩IO Util的jar文件/文件夹。
然后单击“确定”。那固定了我的。 :)
答案 3 :(得分:0)
添加以下依赖解决了问题
implementation 'org.apache.directory.studio:org.apache.commons.io:2.4'