给定一个字符串:
String xml = "<test/>";
如何在Groovy中将其转换为InputStream
?
目前我使用以下代码:
IOUtils.toInputStream(xml, StandardCharsets.UTF_8)
这段代码可以工作,但我希望在Groovy中找到一种更短、无依赖的方法。
我当然知道Java的答案,但它需要丑陋的创建ByteArrayInputStream
。我正在寻找用GDK解决该问题的方法。
给定一个字符串:
String xml = "<test/>";
如何在Groovy中将其转换为InputStream
?
目前我使用以下代码:
IOUtils.toInputStream(xml, StandardCharsets.UTF_8)
这段代码可以工作,但我希望在Groovy中找到一种更短、无依赖的方法。
我当然知道Java的答案,但它需要丑陋的创建ByteArrayInputStream
。我正在寻找用GDK解决该问题的方法。
与 Groovy 无关,纯 Java 相关:
InputStream stream = new ByteArrayInputStream( xml.getBytes( 'UTF-8' ) )
text
方法可以将InputStream
转换为String
,所以我正在寻找类似的快捷方式,而不需要使用ByteArrayInputStream
转换。 - Michal Kordasorg.apache.tools.ant.types.resources.StringResource
,那么它只需要变成这样:new StringResource(xml).inputStream
IOUtils.toInputStream()
正好做new ByteArrayInputStream()
的事情。 GDK 没有添加任何类似于InputStream.getText()
的方法,将字符串转换为输入流。实际上,使用ByteArrayInputStream
是最简单和最直接的方法。 - Szymon Stepniak