java - 序言中不能有内容

标签 java xml parsing utf

我正在尝试使用 xsltxml 转换为 html。我正在使用 java.xml.transform 在 java 中执行此操作。 在我遇到一些 xml 之前,它工作正常。它说以下错误。

[Fatal Error] :1:1: Content is not allowed in prolog. 
    javax.xml.transform.TransformerConfigurationException: 
    javax.xml.transform.TransformerConfigurationException: 
    javax.xml.transform.TransformerException: 
    org.xml.sax.SAXParseException: Content is not allowed in prolog.

所以我确保在 xml 声明之前没有字符。我什至使用该解决方案处理 BOM http://forums.sun.com/thread.jspa?messageID=10324562#10324562

仍然没有运气,它只发生在一个 xml 上。我什至在编辑器中打开 xml 并将其保存在一个具有 utf-8 编码的文件中。这真让我抓狂。任何的想法?

更新:当您为 xsl 文件提供了错误的路径并且发生文件未找到异常时,您会收到此错误。 (这是我的情况。它可能会对某些人有所帮助。感谢您的回复)

最佳答案

如果你有一个带有 BOM 的 UTF-8 文件,这种事情就会发生。 ,并且如果您使用的 XML 解析器不知道它。将 XML 文件保存为不带 BOM 的 UTF-8。

关于java - 序言中不能有内容,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3395560/

相关文章:

java - SimpleDateFormat.parse() - 为不同的日期格式生成错误的日期

javascript - 更改 jwplayer 中元素的位置?

java - 执行exe并读取OutputStream

parsing - 如何使用 FParsec 解析字符串值

java - 如何将网页上的图片加载到webview中?

java - 正则表达式从 errorString 捕获多个单词

android - 当自定义 View 位于选项卡中时自定义 View 中的按钮

C# 解析 txt 文件 IF 名称格式是所需的格式

java - 如何使用 Apache POI 浏览工作簿的工作表?

xml - Visual Studio Code 是否有 XML 架构扩展?