协慌网

登录 贡献 社区

如何在 Java 中将 String 转换为 InputStream?

给定一个字符串:

String exampleString = "example";

如何将其转换为InputStream

答案

像这样:

InputStream stream = new ByteArrayInputStream(exampleString.getBytes(StandardCharsets.UTF_8));

请注意,这假设您需要一个 InputStream,它是一个字节流,表示编码为UTF-8 的原始字符串。

对于小于 7 的 Java 版本,将StandardCharsets.UTF_8替换为"UTF-8"

我发现使用Apache Commons IO让我的生活变得更轻松。

String source = "This is the source of my input stream";
InputStream in = org.apache.commons.io.IOUtils.toInputStream(source, "UTF-8");

您可能会发现该库还提供了许多其他快捷方式,可用于您可以在项目中使用的常用任务。

您可以使用StringReader并使用此其他 stackoverflow 帖子中的解决方案将阅读器转换为输入流。