Java ItextRender未解析<;创建pdf时在数据中输入字符
我正在使用ItextRendered创建pdf。跟着它我的代码Java ItextRender未解析<;创建pdf时在数据中输入字符,java,itext,Java,Itext,我正在使用ItextRendered创建pdf。跟着它我的代码 ITextRenderer renderer = new ITextRenderer(); renderer.setDocumentFromString(html); renderer.layout(); renderer.createPDF(os); 这里的html是包含html标记的html。我的问题是,当我的数
ITextRenderer renderer = new ITextRenderer();
renderer.setDocumentFromString(html);
renderer.layout();
renderer.createPDF(os);
这里的html是包含html标记的html。我的问题是,当我的数据包含
[错误]无法加载XML资源(使用TRaX transformer)。
org.xml.sax.SAXParseException:元素的内容必须包括
格式良好的字符数据或标记
org.xhtmlrenderer.util.xrrontimeexception:无法加载XML资源
(使用TRaX变压器)。org.xml.sax.SAXParseException:内容
元素的类型必须由格式良好的字符数据或标记组成。在
org.xhtmlrenderer.resource.XMLResource$XMLResourceBuilder.createXMLResource(XMLResource.java:191)
位于org.xhtmlrenderer.resource.XMLResource.load(XMLResource.java:75)
在
org.xhtmlrenderer.pdf.ITextRenderer.setDocumentFromString(ITextRenderer.java:158)
在
org.xhtmlrenderer.pdf.ITextRenderer.setDocumentFromString(ITextRenderer.java:153)
请帮我解决这个问题
在adavnce中感谢看起来html字符串可能有问题,或者方法不正确。或许可以尝试:
ITextRenderer renderer = new ITextRenderer();
renderer.setDocument(File htmlFile); //Put your html string in a .html file
renderer.layout();
renderer.createPDF(os);
最后,通过使用Jsoup解析html解决了我的问题这里是我的解决方案代码
private String parseSpecialCharactersInData(String string){
org.jsoup.nodes.Document document =Jsoup.parse(string);
return document.html();
}
谢谢你的回复。我已经按照你的建议做了修改,但仍然会遇到同样的错误。你能在html中添加一个代表性的部分来重现错误吗?