JRuby поддерживает utf-8?

При использовании JRuby 1.6.0.RC2 irb. китайский иероглиф отображался неправильно.


160: jruby 1.6.0.RC2 (ruby 1.8.7 patchlevel 330) (2011-02-09 5434c72) (Java HotSpot (TM) Client VM 1.6.0_23) [Windows XP-x86-java]

PS C:> irb irb (main): 001: 0> ставит "你好"

禮A礎n

=> ноль


Тем не менее, тот же терминал и переключение на Ruby 1.9.2 с использованием pik, китайский иероглиф отображались нормально.


PS C:> пик 192

PS C:> irb

irb (main): 001: 0> помещает "你好"

你好

=> ноль

irb (main): 002: 0> помещает RUBY_VERSION

1.9.2

=> ноль

irb (основной): 003: 0>


Поскольку JRuby утверждает, что может поддерживать UTF-8, я что-то делаю не так, или он просто еще не готов?


person user608800    schedule 11.02.2011    source источник


Ответы (1)


Это может быть проблема чтения строки; они работают?

jruby -e 'puts "你好"'
jruby --1.9 -e 'puts "你好"'
jruby -Ku -e 'puts "你好"'
person Michiel de Mare    schedule 28.02.2011
comment
E: \ jruby_i18n ›jruby -e 'кладет 你好' ?? E: \ jruby_i18n ›jruby --1.9 -e 'помещает 你好' ?? E: \ jruby_i18n ›jruby -Ku -e 'кладет 你好' ?? Все 3 производят одинаково ?? как выход. - person user608800; 01.03.2011
comment
Хорошо, а как насчет jruby -e 'puts "你好"' > o.txt и открыть o.txt в текстовом редакторе. Я очень подозреваю, что проблема в вашем терминале. - person Michiel de Mare; 02.03.2011
comment
тот же результат. Возможно ты прав. Однако, используя тот же терминал, я не могу объяснить, почему он работает с использованием Ruby 1.9.2, а не JRuby 1.6. - person user608800; 03.03.2011