[英]What to import to use IOUtils.toString()?
我正在尝试使用 IOUtils.toString() 从文件中读取。 但是,我收到一条错误消息,提示“无法解析 IOUtils”。
我应该导入什么才能使用这个 function?
String everything = IOUtils.toString(inputStream);
谢谢
import org.apache.commons.io.IOUtils;
如果仍然无法导入添加到pom.xml:
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.5</version>
</dependency>
或直接jar / gradle等访问: http ://mvnrepository.com/artifact/commons-io/commons-io/2.5
此外,因为版本2.5的commons-io方法IOUtils.toString(inputStream)已被弃用。 你应该使用编码方法ie
IOUtils.toString(is, "UTF-8");
Fryta 的回答概述了如何实际使用 IOUtils,而snj 的回答适用于文件。
如果您使用的是 java 9 或更高版本,并且您有输入 stream 可以阅读,您可以使用InputStream#readAllBytes() 。 只需从那里创建一个字符串,不要忘记指定字符集。
String s = new String(inputStream.readAllBytes(), StandardCharsets.UTF_8);
import org.apache.commons.io.IOUtils;
或者,您可以尝试以下方式。 它对我来说是有用的,可以读取资源服务器的公钥
final Resource resource = new ClassPathResource("public.key");
String publicKey = null;
try {
publicKey = new String(Files.readAllBytes(resource.getFile().toPath()), StandardCharsets.UTF_8);
} catch (IOException e) {
e.printStackTrace();
}
需要以下导入语句:
导入 org.apache.commons.io.IOUtils;
如果出现错误“ The import org.apache.commons.io cannot be resolved ”,请将commons-io-2.6.jar添加到项目 Java buildpath和/或项目lib 文件夹中。
注意:建议导入“import org.apache.commons.io.IOUtils;” 至少在这个问题的上下文中通常不会出现在 Eclipse IDE 中。
以下是如何使用Apache IOUtils将InputStream转换为Java中的String的代码
参考: https : //commons.apache.org/proper/commons-io/javadocs/api-2.4/org/apache/commons/io/IOUtils.html
FileInputStream fis = new FileInputStream(FILE_LOCATION);
String StringFromInputStream = IOUtils.toString(fis, "UTF-8");
System.out.println(StringFromInputStream);
如果您需要更多帮助,请告诉我。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.