如何在Java中将String转换为InputStream? [重复]

问题

给定一个字符串:

String exampleString = "example";

如何将其转换为InputStream


#1 热门回答(1218 赞)

喜欢这个:

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

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

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


#2 热门回答(229 赞)

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

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

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


#3 热门回答(33 赞)

你可以使用aStringReader并使用this other stackoverflow post中的解决方案将阅读器转换为输入流。