文
章
目
录
章
目
录
学习使用ByteArrayInputStream和IOUtils类将String转换为InputStream。在Java中,将String写入流是一个常见的任务,具有一些好的快捷方式将会很有用。
要将InputStream转换为String,请阅读链接的文章。
1.使用ByteArrayInputStream
使用ByteArrayInputStream
是从String创建InputStream的最简单方法。使用这种方法,我们不需要任何外部依赖。
该string.getBytes()
方法使用平台的默认字符集将字符串编码为字节序列。要使用不同的字符集,请使用方法getBytes(Charset charset)
。
该类StandardCharsets
提供标准字符集的常量定义。例如,StandardCharsets.UTF_8
.
String string = "www.panziye.com";
InputStream instream = new ByteArrayInputStream(string.getBytes());
2.Commons IO 的IOUtils
IOUtils是一个非常有用的 IO 操作类。这个解决方案也非常好,因为apache commons是大多数应用程序中主要包含的 jar。
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.11.0</version>
</dependency>
IOUtils.toInputStream()
使代码非常可读。它是一个重载方法,因此在调用此方法时使用所需的编码。
static InputStream toInputStream(String input, Charset encoding)
static InputStream toInputStream(String input, String encoding)
给定的程序演示了如何从String创建InputStream。
String string = "www.panziye.com
"; InputStream inStream = IOUtils.toInputStream(string, StandardCharsets.UTF_8);