私は本当にこれに固執し、グーグルのお尻を間違いなく検索し、luaからluajavaを使用してjavaの配列にテーブルを「インポート」しようとしました...今、私はいくつかの簡単なことを行うことができました、luaを印刷します- Javaの変数とテーブルからの単一の要素の読み取り..ここで機能するすべてのもの
JAVA
LuaState L = LuaStateFactory.newLuaState();
L.openLibs();
L.LdoFile("data/test.lua");
L.getGlobal("x"); //I want to read lua-variable x
LuaObject obj = L.getLuaObject(L.getTop()); //So I get the top-element here
System.out.println(obj.getField("Version"));
LUA
x = { ["Version"] = 1.3,["Scans"] = 3 }
さて、これは明らかに単一の値を取得するのにかなり簡単ですが、オブジェクト全体を(配列などとして)Javaに入れて、それを使っていくつかのことを実行できるようにしたいです..そのLuaObjectをループしてみましたが、反復可能または「実際の」配列ではありませんが、それは不可能です。単に出力するobj
と、luaテーブルがわかります。私は、.getObjectを使用して多くの愚かなことを試しましたが、成功しませんでした。次に、プロキシと.pcallについて何かを読みました(Javaの値をluaの関数に渡すためのもののように見えましたが、私が望むものではありません)(非常に不十分な)文書化されたjavadocで何も見つからなかったので、私は誰かがこれを経験していることを願っています。おそらく本当に簡単なものですが、情報を見つけるのは難しいです。これに関する情報については本当に幸せです!
ps元のluaファイル(後で)を変更することはできませんが、そのファイルには1つの大きなテーブルしか含まれません。