Я начал изучать Ruby и столкнулся с досадной проблемой. Я импортировал текстовый файл в свою программу и хочу перебрать строки в нем и вывести их на экран.
Когда я это делаю, консоль перезаписывает последнюю напечатанную строку и записывает новую сверху. Почему это происходит и как я могу это решить?
Вот мой код:
passwords = File.open('C:\Users\Ryan\Desktop\pw.txt', 'r')
lines = passwords.gets
for line in lines
puts line
end
Обновление:
Цикл действует очень странно. Я поместил в него оператор сна, и все, что он сделал, - это сон, а затем продолжил выводить строки. Я ожидал, что он будет спать перед выводом каждой строки. Пример ниже:
passwords.each do |line|
sleep 1
puts line.chomp
end
Обновление 2:
Я только что создал новый текстовый файл и набрал в него несколько случайных вещей для тестирования, и он отлично работает. Похоже, в исходном файле были некоторые плохие символы / кодировка, которые испортили печать на консоль.