對不起,我仍在學習關於lua。你能糾正我,爲什麼從文件中的數據不會逐行閱讀?將文件逐行讀入數組
這是在文件points.txt我的示例性數據:
lexxo:30:1
rey:40:2
lion:40:2
prince:50:3
royal:50:3
因此,當我從上面得到的是2D陣列(表)
player = {{(name),(points),(which var point earned on index)},
{(...),(...),(...)}};
所以問題是,當我嘗試循環打印文件中的所有數據。它只打印最新的一行。所以,我想打印所有的人都
line_points = {}
player_data = {{}}
local rfile = io.open("points.txt", "r")
for line in rfile:lines() do
playername, playerpoint, playeridpoint = line:match("^(.-):(%d+):(%d+)$")
player_data = {{playername, playerpoint, playeridpoint}}
line_points[#line_points + 1] = player_data
end
for i = 1, #player_data do
player_checkname = player_data[i][1] -- Get Player Name From Array for checking further
player_checkpnt = player_data[i][3] -- Get Player ID Point From Array for checking further
print(i..". Name: "..player_data[i][1].." Point: ".. player_data[i][2] .. " ID: " .. player_data[i][3]);
end
是的,這就是我想:)。但它的打印零值。例如,當我把這個'print(line_points [1] [2])' – Han
nvm,我想通過** replace **'line_points [#line_points + 1] = player_data' **來解決它* *'line_playerachievement [#line_playerachievement + 1] = {line:match('([^:] +):(%d +):(%d +)')}'。我不知道爲什麼球員數據陣列不會工作。所以我決定刪除玩家數據,並在for循環中進行識別 – Han