使用C#和LuaInterface,我试图读取一个嵌套的表,但当我尝试打开包含该表的键时得到一个空的LuaTable。阅读嵌套的Lua表,谁是一个System.Double
的.lua文件:
DB = {
["inventory"] = {
[10001] = {
["row"] = 140,
["count"] = 20,
},
[10021] = {
["row"] = 83,
["count"] = 3,
},
[10075] = {
["row"] = 927,
["count"] = 15,
},
}
}
我可以成功的foreach下库存的条目,通过打开表:
LuaTable tbl = lua.GetTable("DB.inventory");
foreach (DictionaryEntry de in tbl)
...
什么我不能做的是开放的库存项目,并列举其以相同的方式输入。这是因为关键是System.Double
类型?这失败了:
LuaTable tbl = lua.GetTable("DB.inventory.10001");
foreach (DictionaryEntry de in tbl)
有例外,因为tbl是空的。
实际上,一旦枚举了键(库存项),我就想深入嵌套表并处理这些内容。正如你所看到的,我无法像我这样做得到对嵌套表的引用。
我在每行代码前放了4个空格,但是当我提交时,它们全部被删除并压缩。 – 2010-03-26 22:58:12