У меня есть файл. Внутри файла я сохранил двумерный массив, примерно такой:
[[0, 0, 1, 0, 1, 0, 1, 0, 1, 0], [0, 0, 0, 0, 0, 0, 1, 1, 0, 0], [0, 0, 0, 0, 1, 1, 1, 1, 0, 0], [0, 0, 0, 1, 0, 0, 1, 0, 0, 0], [0, 1, 1, 0, 0, 0, 0, 0, 0, 0], [0, 0, 0, 0, 0, 0, 1, 1, 1, 0], [0, 1, 1, 0, 1, 0, 1, 0, 1, 0], [0, 1, 0, 0, 0, 0, 0, 1, 0, 0], [0, 0, 0, 1, 0, 0, 0, 1, 0, 0], [0, 0, 0, 0, 0, 0, 0, 0, 0, 0]]
Длина массивов может варьироваться, и они не всегда имеют длину 10 элементов.
Я читаю массив из файла, используя этот метод:
map = IO.readlines("test.txt")
и когда я печатаю результат, используя:
map.each {|x| puts "#{x}"}
вывод - это то, что я ожидаю. Но если я попытаюсь получить длину строки, используя:
puts map[0].length
Я получаю 320 вместо 10 (что я и ожидаю).
Может кто-нибудь объяснить мне, почему я получаю 320
вместо 10
?