Skip to content
miyucy edited this page Sep 13, 2010 · 4 revisions

メモ

RUBY_VERSION

  • if define? ::Encoding
  • if String.instance_methods.include? ‘encode’
  • if ’’.responde_to? :encode
  • if RUBY_VERSION > ‘1.8’

どれがいいの? 最近2chであれこれ議論してたけど
duck typing? chicken typing? 俺はstr.encodeしていることを確認したいから responde_to? するぜ?
好みの問題?

MRI18,MRI19,JRuby用nkfオプション

MRI19ならEncoding::Windows_31Jがつく
"-x" はCP932を指定することで暗黙のうちに指定されるのでおk12
JRubyは "--ic""--oc" に対応してないけど、無視してくれるのでおk

CP932UTF-8

NKF.nkf("-m0Sw --ic=CP932 --oc=UTF-8", STRING)

UTF-8 → CP932

NKF.nkf("-m0sW --ic=UTF-8 --oc=CP932", STRING)

1 いつから? 1.8.6? 1.8.7? むしろ害はないからつける?

2 JRubyは無視してる http://github.com/jruby/jruby/src/org/jruby/RubyNKF.java

Clone this wiki locally