Windowsでみると円マーク(¥)がバックスラッシュ(\)に見えるというISSUEが発生した
昔調べたきがするがブログにはしてなかったので改めて調べる
Unicodeをみる
該当文字のUnicodeを見るとU+005C
となっている
U+005C
はUTF-8ではバックスラッシュ(\)を意味し、円(¥)はU+00A5
になるので異なるものである
つまり、なんらかの入力データが円(¥)のつもりがバックスラッシュ(\)となっている可能性がある
そんなことがあるのかというとある
日本版Windowsでは発売当初から、JIS X 0201 をもとにして作った文字コードを使用しており、いまでも一部のフォントがその文字コードが使用されているのだが、ややこしいことにこのJIS X 0201 ではU+005C
が円(¥)に割り当てられている
これによりWindowsで円(¥)のつもりで入力しているU+005C
がエンコードの仕方によってバックスラッシュ(\)になる
こちらのページをwinとmacで見比べると表示されるものが異なることがわかる
対策としては以下が考えられる
- windowsでのデータ作成をやめる
- データ作成時に「U+00A5」(¥)の方を入力するようにする
- データ作成時に半角「¥」はやめて全角「¥」にする
- 登録時に「U+005」(\)を「U+00A5」(¥)に変換してしまう