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」(¥)に変換してしまう