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