[英]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.