在Lua中从XML中读取属性。

在 Lua 中如何读取 XML 的属性值

在 Lua 中可以使用 LuaXML 库来解析 XML。要读取 XML 元素的属性,可以使用 xml.eval 函数来获取元素的属性表,然后从表中获取所需属性的值。

下面是读取 XML 属性的示例代码:

local xml = require("xml")

-- 解析 XML
local xml_str = [[
    <bookstore>
        <book category="COOKING">
            <title lang="en">Everyday Italian</title>
            <author>Giada De Laurentiis</author>
            <year>2005</year>
            <price>30.00</price>
        </book>
        <book category="CHILDREN">
            <title lang="en">Harry Potter</title>
            <author>J K. Rowling</author>
            <year>2005</year>
            <price>29.99</price>
        </book>
    </bookstore>
]]
local xml_tree = xml.eval(xml_str)

-- 读取属性
local book_elements = xml_tree:find("book")
for i, book in ipairs(book_elements) do
    local category = book["@category"]
    print(category)
end

输出:

COOKING
CHILDREN

在上面的示例中,我们首先将 XML 字符串解析为 XML 树,然后使用 xml_tree:find("book") 查找所有的 book 元素。从 book 元素中获取 category 属性的值,可以使用 book["@category"]

原文链接 https://stackoverflow.com/questions/5682833

点赞
stackoverflow用户609042
stackoverflow用户609042

在谷歌搜索中输入 "lua xml",第一个结果是http://lua-users.org/wiki/LuaXml。 再次搜索第一个例子 "Luaxml",我找到了它的官方主页,并在首页找到了一个好的示例:http://viremo.eludi.net/LuaXML/

2011-04-16 08:15:17