在java中将字符串转换为XML输入流
我正在尝试使用FOP和Java生成PDF文档。
我将XML作为字符串而不是文件接收。
如何将此XML字符串转换为XML输入流,以便我可以调用xslfoTransformer.transform(source,res); 其中source是我的XML字符串作为输入流。
请提供您的建议。
您可能希望将其转换为Reader
,而不是InputStream
。 使用StringReader执行此操作。 StreamSource有一个带有Reader的构造函数,你可以将StreamSource
传递给Transformer.transform()。
我说你可能想要一个Reader
而不是一个InputStream
因为String包含字符而不是字节,而InputStream
是一个字节流,而Reader
是一个字符流。
new StreamSource(new StringReader(str))
使用ByteArrayInputStream :
String S = ...; InputStream source = new ByteArrayInputStream(S.getBytes(encoding))