2012-10-14 49 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