如何用lua写出一个,更改xml文件内容的脚本。

如何用lua写出一个,更改xml文件内容的脚本。,第1张

下一个第三方xml库就好了

例如 Lua-Simple-XML-Parser

网页链接

或者到 Lua wiki 找一个其他的库

网页链接

programming in lua 有相关的例子,一般脚本语言和c/c++之类的互相调用分两类,一类是扩展,就是将c/c++模块封装起来给脚本语言用,用swig做封装很方便的,一类是嵌入,就是在c/c++等应用中嵌入lua引擎,一般是用来分离经常变化的逻辑部分,比如WOW就是用lua语言作为扩展,用户可以编写lua脚本来完成一些特定功能的机器人。你要做的就是使用lua c api来在你的程序中执行lua。类似这种:
int iErr = 0;
lua_State lua = lua_open (); // Open Lua
luaopen_io (lua); // Load io library
if ((iErr = luaL_loadfile (lua, "testlua")) == 0)
{
// Call main
if ((iErr = lua_pcall (lua, 0, LUA_MULTRET, 0)) == 0)
{
// Push the function name onto the stack
lua_pushstring (lua, "helloWorld");
// Function is located in the Global Table
lua_gettable (lua, LUA_GLOBALSINDEX);
lua_pcall (lua, 0, 0, 0);
}
}
lua_close (lua);

--不限于五位数,比较直白的通用算法
function isPalindrome(num)
    local result = true
    local t = {}
    
    --将数字转置为字符串后处理为table
    local str = tostring(num)
    
    for i = 1, #str do
        t[i] = str:sub(i,i)
    end
    
    --获取table长度
    local n = #t
    
    for i = 1, n/2
        if t[i] ~= t[n-i+1] then  --比较对应位数
            result = false
            return result
        end
    end
    
    return result
end
local a = 12345678987654321
print(isPalindrome(a))

在cmd中执行就可以了。
假设luadec放在c:\lua下,想要看到c:\test\testlua文件的源码,那么可以使用如下 *** 作
1打开CMD 命令行窗口。
2在窗口中输入如下命令:
c:\lua\luadecexe -d c:\test\testlua >c:\test\test_baklu。
3使用lua编辑器,打开c:\test\test_baklua 就已经看到源码了。


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/yw/13206210.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-06-20
下一篇 2023-06-20

发表评论

登录后才能评论

评论列表(0条)

保存