メインメニューを開く

差分

MonoでSHIFT-JISを扱う

186 バイト追加, 2020年12月23日 (水) 03:08
Administrator がページ「Mono/SHIFT-JISを扱う」を「MonoでSHIFT-JISを扱う」に移動しました
==検証==
まず[[文字コード]]が[[SHIFT-JIS]]の[[テキストファイル]]を用意する。検証はなお、検証に使用した[[Mac OS X 10.10]]で行ったが初期状態ではには初期状態では[[nkf]]が入っていないので[[homebrew]]からぶち込んである。
<source lang="bash">
$ echo ロミオ×ジュリエット | nkf -s > test.txt
「×」が「?」に文字化けした。
 
==回避策1==
utf8-sjis-encoderというイカす[[ライブラリ]]を[[GitHub]]で発見した。これは[[Unity]]や[[PS MobileSuite]]で使われている古い[[Mono]]だと(.NET Framework 2.0系相当)だと[[文字化け]]どころかクラッシュするという理由で作られたものらしい。どころか[[クラッシュ]]するという理由で作られたものらしい。
[[NuGet]]はないようなので[[GitHub]]から[[ソース]]を拾ってきて使ってみた。
なお、この[[ライブラリ]]の変換テーブルは巨大なの[[変換テーブル]]部分は巨大な[[ソースコード]](to_jis.csとto_utf8.cs)となっており[[Xamarin Studio]]で開くと残念な結果になる。*https://github.com/GRGSIBERIA/utf8-sjis-encoder
検証
ロミオ×ジュリエット
ちゃんと表示された。正常に表示された。素晴らしい。
==関連項目==