2013-05-17 3 views
3

Я пытаюсь ввести длинную строку (> 256 символов, но в целом < 512) в Руби:Рубин получает метод укорачивает мой вход в 256 символов

puts "Enter long string" 
ilogo = gets.chomp 
puts "#{ilogo}" 

По какой-то глупой причине, он всегда обрезает чтобы сохранить только 256 символов (до chomp).
Я проверил, что Ruby принимает более длинные строки и что консоль командной строки Windows 7 также принимает строки> 256 символов. Я не могу найти никакого упоминания о методе gets, имеющем такой тип ограничения, но я, несомненно, что-то пропустил. Я не знаю. Может быть, это просто ограничение?

Edit: Просто чтобы быть более конкретным: один из тестовых строк я использую это:

11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111123456777777777777777777777 

Где 6 соответствует 256-й символ. Как указано, строка обрезает все символы за пределами 256-го.

+0

где вы пытаетесь напечатать это? – Woot4Moo

+0

Просто протестировал это, отлично работает здесь на ruby ​​1.9.3p392 на Mac OS X 10.8. Кроме того, вы имели в виду 'ilogo' вместо' 'ilogo'' для переменной? –

+0

Это не общее ограничение 'gets'. Я только что подтвердил IRB на MacOS. –

ответ

1

Лучшее место для публикации этого отчета об ошибке - список рассылки Ruby-Talk, http://www.ruby-forum.com/forum/ruby.

+1

Я только что отправил сообщение об ошибке, # 8427. – jen

 Смежные вопросы

  • Нет связанных вопросов^_^