Ruby で BOM 付き UTF-8 を出力する
それはそれでかまわないのですが、 ruby で BOM 付きの UTF-8 を出力したいことがあって、ちょっとやり方に迷ってしまったので、その対策方法です。
IO クラスの write 系は出力の前に文字列でなければ to_s を使って文字列に変換して出力してしまうので、バイトコードを指定して出力することはできません。
そこで、 文字列に BOM のバイトコード(0xEF 0xBB 0xBF)を格納して、変換されないようにして出力する必要があります。
def write_bom(fp)
bom = " "
bom[0] = 0xEF
bom[1] = 0xBB
bom[2] = 0xBF
fp.write(bom)
end
File.open("foo.txt", "w") {|fp|
write_bom(fp)
# 通常の出力
}
Ruby アソシエーションで助成金を公募
2011 年度助成金公募
金額は 50 万で、ライブラリなどの Ruby を改善するためのプロジェクトに対する助成金らしいです。
私も応募してみました。
締め切りは 11/18 なので、いいアイデアをもっている方は応募してみてはどうでしょうか。
![]() | オブジェクト指向スクリプト言語 Ruby (ASCII SOFTWARE SCIENCE Language) (1999/10) まつもと ゆきひろ、石塚 圭樹 他 商品詳細を見る |
埋め込みruby、組み込みruby、組み込み向けruby 違いわかる?
次の 3 つがそれぞれ何を指しているかわかりますか ?
- 埋め込み ruby
- 組み込み ruby
- 組み込み向け ruby