アニメやゲームの感想から、ブログ運営、お金(資産運用、節税)、健康の話まで雑多につぶやくブログです

【ruby】5C問題にぶち当たった時の話【解決策】

1 min 1 views

今更ながら 5C 問題にぶち当たりました。

Shift-JIS で、rubyのコードを書いていて、文字列置換で5C問題にぶつかりました。

ruby 側でこんなコードを書いたら

file_path = file_path.gsub( "\\", "/" )

ファイル名に「ソ」を含んでいた際に文字化けしてしまった……

調べてみると↓

2 byte 目に「5C」が入っていると起こる問題だそうで。
お恥ずかしながら知りませんでした。
(Shift-JIS で コードを書かなければ問題ない)

よく日本語のPrint文を書くので
Shift-JIS で、コードを書いてしまっていたのですが
これからはやめよう。と誓いました。

上で、「Shift-JIS で コードを書かなければ問題ない」
と書いたのですが、UTF-8 で書きなおしましたが
同じ問題が起こりました。アルェ?🤪

なので、エンコードを 「UTF-8」にして gsub で変換して
その後に 「Shift-JIS」に戻す。
という事を行って回避しました。うーん……謎だ。
(根本解決になっていない気がしますが)

まぁ、壁にぶち当たれてよかったです。
今回、壁にぶち当たれてなかったら
本質を理解できないままだっただろうから。

「失敗がヒトを成長させる」

とはよく言いますが、ほんとそれ。

成功しかした事がない人は、ある意味幸せだと思いますが
失敗だらけのヒトは、それだけ成長できているので
それもそれで幸せな気がします。

それでは今回はこのへんで👋

hal_neko

hal_neko

会社員雑記ブロガー

元スーパー店員。ゲーム屋さん所属。来世は猫がいいです。
趣味やお金の事について雑多につぶやいてます。
ブログでそこそこ稼げるようになるのが目標です(- -)
そこそこって大事。そういうこと。

FOLLOW

カテゴリー:
関連記事

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です