3

Ruby で長い文字列 (> 256 文字、通常は < 512 文字) を入力しようとしています:

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

なんらかのばかげた理由で、常に入力を切り捨てて 256 文字 (chomp の前) のみを保持します。
Ruby がより長い文字列を受け入れ、Windows 7 コマンド ライン コンソールも 256 文字を超える文字列を受け入れることを確認しました。そのような制限がある gets メソッドについての言及は見つかりませんが、確かに何かが欠けています。私は無知です。それは単なる取得制限でしょうか?

編集:より具体的に言うと、私が使用しているテスト文字列の1つは次のとおりです。

11111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111111123456777777777777777777777

6 は 256 番目の文字に対応します。示されているように、文字列は 256 番目を超えるすべての文字を切り捨てます。

4

1 に答える 1

1

このバグ レポートを投稿するのに最適な場所は、メーリング リスト Ruby-Talk ( http://www.ruby-forum.com/forum/ruby )です。

于 2013-05-19T12:26:36.477 に答える