タグ

Rubyとencodingに関するbabydaemonsのブックマーク (2)

  • rubyのIOとエンコーディングについて - こしごぇ

    IOのドキュメントより http://doc.ruby-lang.org/ja/1.9.2/class/IO.html IOオブジェクトは外部エンコーディングと内部エンコーディングを持つ。 外部エンコーディング IOが表すファイルなどの文字エンコーディング 内部エンコーディング IOから読み込まれた文字列、あるいはIOの書き込みメソッドへ渡す文字列の文字エンコーディング IOのエンコーディングが指定されていない場合 IOから読み込んだ文字列のエンコーディングはEncoding.default_externalに設定される。エンコーディングの検査や変換は行われない。 外部エンコーディングのみが指定されている場合 IOから読み込んだ文字列のエンコーディングは外部エンコーディングに設定される。エンコーディングの検査や変換は行われない。 IOへ書き込まれる文字列は外部エンコーディングに変換される。

    rubyのIOとエンコーディングについて - こしごぇ
    babydaemons
    babydaemons 2014/12/03
    ありがたいイディオムw “File.open('sjis.csv', 'r:Shift_JIS:UTF-8') do |input|”
  • Rack::Utils#escapeがRuby1.9.1だと何かアレな件 : As Sloth As Possible

    sinatraとActiveRecordとERBでBBS作ったのでソースを公開してみる - だるろぐに触発されて俺もBBSを作ってみようと、ここ数日Sinatraをいじっていた。Sinatraさんは最近バージョンアップしてた気がするけど、どうやらちゃんとRuby1.9.1でも動くようだ。素敵。 で、順調に行くかと思ったんだけど、どうにも書き込みのspecが通らない。そこで初めて、POSTやGETでパラメータにマルチバイトの文字列が入ってると何かおかしいことに気付いた。 最初に書いたspecとアプリ側のコードを抜粋。 # coding: utf-8 require 'rubygems' require 'rack/test' require 'routes.rb' #sinatraアプリ set :environment, :test include Rack::Test::Methods

    Rack::Utils#escapeがRuby1.9.1だと何かアレな件 : As Sloth As Possible
    babydaemons
    babydaemons 2011/10/06
    なんで、このパッチが取り込まれないの???
  • 1