LuaXML 'XMLDecl not at start document [char=1]'?
LuaXML 'XMLDecl not at start document [char=1]'?
我正在使用 LuaXML 来解析 XML 文件。我正在使用在 LuaXML 存储库中找到的示例来测试库,现在我只是将我的文件像这样通过解析器:
local filename = "dir/myxml.xml"
local xmltext = ""
local f, e = io.open(filename, "r")
if f then
--Gets the entire file content and stores into a string
xmltext = f:read("*a")
else
error(e)
end
--Instantiate the object the states the XML file as a Lua table
local xmlhandler = simpleTreeHandler()
--Instantiate the object that parses the XML to a Lua table
local xmlparser = xmlParser(xmlhandler)
xmlparser:parse(xmltext)
对于示例文件和我在网上找到的另一个示例,代码可以完美运行。但是,对于我要解析的文件,出现以下错误:
...dir/LuaXML/xml.lua:170: XMLDecl not at start of document [char=1]
我的解释是 XML 声明不正确,但是 XML 文件的第一行是:
<?xml version="1.0" encoding="utf-8"?>
这是same/similar的例子。另外,第一行之前没有空格。
谢谢!
原来这个错误是因为BOM。为了更正它,我在 Notepad++ 中打开了我的 XML 文件,然后执行了以下操作
编码 --> 以 UTF-8 编码。
当我重新运行我的程序时,我没有发现任何错误。
我正在使用 LuaXML 来解析 XML 文件。我正在使用在 LuaXML 存储库中找到的示例来测试库,现在我只是将我的文件像这样通过解析器:
local filename = "dir/myxml.xml"
local xmltext = ""
local f, e = io.open(filename, "r")
if f then
--Gets the entire file content and stores into a string
xmltext = f:read("*a")
else
error(e)
end
--Instantiate the object the states the XML file as a Lua table
local xmlhandler = simpleTreeHandler()
--Instantiate the object that parses the XML to a Lua table
local xmlparser = xmlParser(xmlhandler)
xmlparser:parse(xmltext)
对于示例文件和我在网上找到的另一个示例,代码可以完美运行。但是,对于我要解析的文件,出现以下错误:
...dir/LuaXML/xml.lua:170: XMLDecl not at start of document [char=1]
我的解释是 XML 声明不正确,但是 XML 文件的第一行是:
<?xml version="1.0" encoding="utf-8"?>
这是same/similar的例子。另外,第一行之前没有空格。
谢谢!
原来这个错误是因为BOM。为了更正它,我在 Notepad++ 中打开了我的 XML 文件,然后执行了以下操作
编码 --> 以 UTF-8 编码。
当我重新运行我的程序时,我没有发现任何错误。