2023年
3月
1 2 3 4
5 6 7 8 9 10 11
12 13 14 15 16 17 18
19 20 21 22 23 24 25
26 27 28 29 30 31

setup diary

2007|12|
2008|01|02|03|04|05|06|07|08|09|10|11|12|
2009|01|02|03|04|05|06|07|08|09|10|11|12|
2010|01|02|03|04|05|06|07|08|09|10|11|12|
2011|01|02|03|04|05|06|07|08|09|10|11|12|
2012|01|02|03|04|05|06|07|08|10|11|12|
2013|01|02|03|04|05|06|07|08|09|10|11|12|
2014|01|02|03|04|06|08|11|
2015|01|02|03|04|05|06|07|08|10|11|12|
2016|01|02|03|04|05|06|07|08|09|10|11|12|
2017|01|02|03|04|05|06|07|08|09|10|11|12|
2018|01|02|03|04|05|06|07|08|09|10|11|12|
2019|01|02|03|04|05|06|07|08|09|10|11|12|
2020|01|02|03|04|05|06|07|08|09|10|11|12|
2021|01|02|03|04|05|06|07|08|09|10|11|12|
2022|01|02|03|04|05|06|07|08|09|10|11|12|
2023|01|02|03|04|05|06|07|08|09|10|11|

2023-03-09 rubyの更新

_ 1.8.7から2.7.4へ

10年ぐらい前にセットアップしたPCを更新したら,rubyのversionがかなり違っていて,プログラムを書き換えるのに苦労した.特に,文字コードとしてShift_JISを使っていたので,その部分も面倒だった.正確にはCP932というコードだったので,Shift_JISを指定しても動かなかったが. 主に引っかかった点を,羅列しようと思う.
  • requireのフォルダ指定が必要
  • jcodeが廃止
  • parsedateが廃止されたので,require "date"としてからDate::parse(self).to_timeを使った
  • # coding: cp932を指定した.
  • CGIのformを取り込むために,CGI.accept_charset="cp932"とした
  • ファイルの読み書きで,"w:cp932"などと指定した
大体は以上の変更で動くようになったようだが,今後まだバグが出るかも知れない.

_ 2023/3/30追記

あと,cookieで日本語を使っている場合に,CGI.unescape(ci[0])などとしなければならなかった.