我正在尝试将 HTML 数据转换为 PDF。为此,我使用了 xmlworker-5.5.6.jar。但是在执行代码时,它会显示缺少资源的错误。
任何人都可以帮忙。提前致谢。
这是我的代码
Document document = new Document(PageSize.LETTER);
PdfWriter pdfWriter = PdfWriter.getInstance(document, new FileOutputStream(new File(filepathpdf)));
document.open();
document.addAuthor("ME");
document.addCreator("ME");
document.addSubject("Thanks for your support");
document.addCreationDate();
document.addTitle("Please read this");
XMLWorkerHelper worker = XMLWorkerHelper.getInstance();
String str = sb.toString().substring(sb.indexOf("<html"),sb.length());
System.out.println(str);
worker.parseXHtml(pdfWriter, document, new StringReader(str));
document.close();
System.out.println("Done.");
这是我的错误:
08-24 12:28:42.079 14077-15044/com.abc.abc E/AndroidRuntime: 致命异常: AsyncTask #5 进程: com.abc.abc, PID: 14077 java.lang.RuntimeException: 执行 doInBackground 时出错() 在 android.os.AsyncTask$3.done(AsyncTask.java:309) 在 java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:354) 在 java.util.concurrent.FutureTask.setException(FutureTask.java: 223) 在 java.util.concurrent。FutureTask.run(FutureTask.java:242) 在 android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:234) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113) 在 java.util。 concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) at java.lang.Thread.run(Thread.java:818) 原因:com.itextpdf.tool.xml.net.FileRetrieveImpl 处的 java.lang.ExceptionInInitializerError。processFromHref(FileRetrieveImpl.java:170) 在 com.itextpdf.tool.xml.css.StyleAttrCSSResolver.addCssFile(StyleAttrCSSResolver.java:404) 在 com.itextpdf.tool.xml.html.head.Link.start(Link.java: 80) com.itextpdf.tool.xml.html.AbstractTagProcessor.startElement(AbstractTagProcessor.java:131) com.itextpdf.tool.xml.pipeline.html.HtmlPipeline.open(HtmlPipeline.java:105) com.itextpdf .tool.xml.XMLWorker.startElement(XMLWorker.java:103) 在 com.itextpdf.tool.xml.parser.XMLParser.startElement(XMLParser.java:372) 在 com.itextpdf.tool.xml.parser.state.SelfClosingTagState.process(SelfClosingTagState.java:71) 在 com.itextpdf .tool.xml.parser.XMLParser.parseWithReader(XMLParser.java:237) 在 com.itextpdf.tool.xml.parser.XMLParser.parse(XMLParser.java:215) 在 com.itextpdf.tool.xml.XMLWorkerHelper.parseXHtml (XMLWorkerHelper.java:174) 在 com.abc.abc。SearchDetailsActivity$DownloadFileAsync.doInBackground(SearchDetailsActivity.java:2316) at com.abc.abc.SearchDetailsActivity$DownloadFileAsync.doInBackground(SearchDetailsActivity.java:2177) at android.os.AsyncTask$2.call(AsyncTask.java:295) at java。 util.concurrent.FutureTask.run(FutureTask.java:237) at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:234) at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) 在 java.lang.Thread.run(Thread.java:818) 引起:java.util.MissingResourceException:找不到资源对于 java.util.ResourceBundle.getBundle(ResourceBundle.java:230) 的 java.util.ResourceBundle.missingResourceException(ResourceBundle.java:238) 的包'errors/errors_en_GB',键''。ResourceBundle.getBundle(ResourceBundle.java:159) 在 com.itextpdf.tool.xml.exceptions.LocaleMessages.(LocaleMessages.java:99) 在 com.itextpdf.tool.xml.exceptions.LocaleMessages.(LocaleMessages.java:84)在 com.itextpdf.tool.xml.net.FileRetrieveImpl.processFromHref(FileRetrieveImpl.java:170) 在 com.itextpdf.tool.xml.css.StyleAttrCSSResolver.addCssFile(StyleAttrCSSResolver.java:404) 在 com.itextpdf.tool.xml .html.head.Link.start(Link.java:80) com.itextpdf.tool.xml.html.AbstractTagProcessor.startElement(AbstractTagProcessor.java:131) com.itextpdf.tool.xml.pipeline.html.HtmlPipeline.open(HtmlPipeline.java:105) com.itextpdf .tool.xml.XMLWorker.startElement(XMLWorker.java:103) 在 com.itextpdf.tool.xml.parser.XMLParser.startElement(XMLParser.java:372) 在 com.itextpdf.tool.xml.parser.state.SelfClosingTagState .process(SelfClosingTagState.java:71)在 com.itextpdf.tool.xml.parser.XMLParser.parseWithReader(XMLParser.java:237) 在 com.itextpdf.tool.xml.parser.XMLParser.parse(XMLParser.java:215) 在 com.itextpdf.tool .xml.XMLWorkerHelper.parseXHtml(XMLWorkerHelper.java:174) 在 com.abc.abc.SearchDetailsActivity$DownloadFileAsync.doInBackground(SearchDetailsActivity.java:2316) 在 com.abc.abc.SearchDetailsActivity$DownloadFileAsync.doInBackground(SearchDetailsActivity.java:2177) 在 android.os.AsyncTask$2.call(AsyncTask.java:295) 在 java.util.concurrent.FutureTask.run(FutureTask.java:237) 在 android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java :234) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) 在 java.lang.Thread.run(Thread.爪哇:818)818)818)295) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.runWorker(ThreadPoolExecutor.runWorker) 在 android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:234) java:1113) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) 在 java.lang.Thread.run(Thread.java:818)295) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.runWorker(ThreadPoolExecutor.runWorker) 在 android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:234) java:1113) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) 在 java.lang.Thread.run(Thread.java:818)237) 在 android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:234) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run( ThreadPoolExecutor.java:588) 在 java.lang.Thread.run(Thread.java:818)237) 在 android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:234) 在 java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run( ThreadPoolExecutor.java:588) 在 java.lang.Thread.run(Thread.java:818)1113) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) 在 java.lang.Thread.run(Thread.java:818)1113) 在 java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588) 在 java.lang.Thread.run(Thread.java:818)