我们可以使用下面的代码将的内容InputStream转换为String。首先,我们使用FileInputStreamcreate来连接要读取的文件。IOUtils.toString(InputStream input, String encoding)方法获取的内容InputStream并返回其字符串表示形式。最后,我们需要InputStream在finally块中关闭。
package org.nhooo.example.commons.io;
import org.apache.commons.io.IOUtils;
import java.io.InputStream;
import java.io.FileInputStream;
import java.io.File;
import java.nio.charset.StandardCharsets;
public class InputStreamToString {
public static void main(String[] args) throws Exception {
// 创建用于读取data.txt文件内容的输入流。
try (InputStream is = new FileInputStream(new File("data.txt"))) {
// 使用UTF-8以字符串形式获取输入流的内容
// 作为字符编码。
String contents = IOUtils.toString(is, StandardCharsets.UTF_8);
System.out.println(contents);
}
}
}Maven依赖
<!-- http://repo1.maven.org/maven2/commons-io/commons-io/2.6/commons-io-2.6.jar --> <dependency> <groupId>commons-io</groupId> <artifactId>commons-io</artifactId> <version>2.6</version> </dependency>