1

次のようなファイルを読み取るにはどうすればよいですか。

11111
10001
10001
10001
11111

次のような 2 次元配列に:

{{1, 1, 1, 1, 1},
 {1, 0, 0, 0, 1},
 {1, 0, 0, 0, 1},
 {1, 0, 0, 0, 1},
 {1, 1, 1, 1, 1}}

ルアで?

これは私が考えたことです:

for i = 1, number_of_lines do
  current_line = map_file:read("*line")
  character_array = {}
  for i = 1, #current_line do
    table.insert(character_array, current_line[i])
  end
end

しかし、「number_of_lines」を取得する方法がわかりません。これは、Lua でのテキスト ファイルの行数です。どうすればいいですか?

また、他に簡単な方法があれば教えてください。

4

1 に答える 1

6

行数を取得する必要はありません。行がなくなるまで続けてください。

local line_data = {}
for line in map_file:lines() do
  local character_array = {}
  for i = 1, #line do
    character_array[#character_array + 1] = line[i];
  end
  line_data[#line_data + 1] = character_array
end
于 2012-06-09T15:06:21.263 に答える