2012-10-14 398 views
2

我在Visual Studio中执行了C++代码,并最终通过我的Lua代码执行了我的.lua文件。 我的目标是为Lua创建一个XML文件。 经过一番研究,我现在知道我需要为此使用解析器。如何正确使用Lua-XML解析器(lua expat/LuaXml)

两个很好的解析器似乎是:

的问题是,我不知道如何使用它们。是的,这听起来很简单,但我对这件事很陌生,不理解这些解析器的描述。所以我的问题是这些:

  1. 我该如何使用/安装解析器,更准确地说,哪些文件必须放在哪里?
  2. 为了使Lua的XML文件可用,我必须做些什么?
  3. 解析的数据可以在不同的文件中或直接在我的Lua代码中使用吗?

回答

1

我使用LuaXML来满足我的要求,因为它是搜索的第一个结果,它在lua-users.org上记录了一些非常好的示例。

你也可以看看lua eXpat的例子project website

安装

如果你是一个Windows的老板,你可以看看lua For Windows。它有许多其他的'电池',因为他们称之为。 :)

对于Linux,安装说明在其各自的网站上有很好的记录。

+0

谢谢您的回答。我的确看到了所有这些例子。但我仍然无法弄清楚该怎么做(这太抽象了,因为我在这个领域是新的)。 你如何使用LuaXML?你是否启动.exe文件(随附下载文件)并键入smth?你是否在某处放置了某些文件? 对不起,请详细询问,但我不知道。 ps。我也用窗户。 – Shepherdjo

+0

与此同时,我尝试与卢阿的窗户(见上面的评论),但我仍然失去了问题。所以任何帮助仍然非常感激.. – Shepherdjo

1

LuaXML和LuaExpat都包含一个C库和一个Lua胶水文件。

C文件可以编译到Windows上的DLL中,并且DLL必须放在package.cpath给出的路径中的某处。另一种可能的替代方法是,如果在Visual Studio中从源代码编译Lua,则将LuaXML_lib.c(假设LuaXML)与Lua文件一起编译,并将luaopen_LuaXML_lib添加到linit.c中的模块列表中。

Lua库文件LuaXml.lua必须放在package.path中列出的目录之一中。

如果你不知道你的系统上的路径,尝试运行:

print("C path:", package.cpath) 
print("Lua path:", package.path) 
+0

好的,我会在我的工作电脑明天早上尝试这个。 前面还有一个问题:(1)我在哪里实际执行/键入命令?我的意思是......在我的lua控制台中?或者在下载的这个exe文件中?(2)LuaXML会生成一个新文件(用于lua使用),其中包含以前的xml数据,或者我可以在哪里访问这些数据? – Shepherdjo

+1

在你的Lua控制台中运行这些行。 LuaXML在解析XML文件时不创建文件,而是返回表示存储在内存中的XML内容的_object_(实际上是一个表)。 – prapin

+0

我试过它通过视觉工作室,它没有奏效。当我在控制台中输入代码时,它说没有找到文件。 我下载了lua for windows(所以没有从vs编译),并使用正常的控制台窗口。当我输入行时没有错误显示。 我现在的问题是,我在那里输入了什么?如果我按照这个例子没有任何反应... 男人我觉得这么迷失在这里..我希望你能帮助我.. – Shepherdjo