ファイルのエンコーディングに少し問題があります。
「sometext%C3%B3 + more +%26 + andmore」のようなURLエンコードされた文字列を受け取り、エスケープを解除してデータを処理し、windows-1252エンコードで保存します。
変換は次のとおりです。
irb(main) >> value
=> "sometext%C3%B3+more+%26+andmore"
irb(main) >> CGI::unescape(value)
=> "sometext\303\263 more & andmore"
irb(main) >> #Some code and saved into a file using open(filename, "w:WINDOWS-1252")
irb(main) >> # result in the file:
=> sometextĂ³ more & andmore
そして結果はsometextó more & andmore