我有xhtml文件:

http://validator.w3.org/上得到的结果是:该文档已成功检查为HTML 4.01 Transitional!

我用下面的代码解析它:
        OutputStream os = null;

    ITextRenderer renderer = new ITextRenderer();

    os = new FileOutputStream(new File("example.pdf"));
    BufferedReader reader1 = new BufferedReader(new FileReader("x:\\workspace\\Test.html"));

    StringBuilder sb = new StringBuilder();
    String line = null;
    while ((line = reader1.readLine()) != null) {
        sb.append(line);
    }

    reader1.close();

    String str = sb.toString();

    renderer.setDocumentFromString(str);
    renderer.layout();
    renderer.createPDF(os);

    os.close();


并且出现标题中所述的错误。您知道如何解决此问题吗?

最佳答案

您忘记了HTML页面中的右括号(>)。

因此,它不是XHTML页面,而只是HTML4页面。您命名的验证器仅可用于验证HTML4,而不能用于XHTML。

HTML4可让您执行XML(和XHTML)禁止的操作,例如在HTML中,以下内容是合法的:

<br

09-30 16:48
查看更多