MENU

【.NET】Shift-JISが使えない?変換できない対処法について

.NET Coreを利用する場合は、Shift-JISの利用にご注意!

先日、個人的にツールを作成していたある日のこと、
テキストファイルの読み込みを実装しようとしていたところ、

ArgumentException: ‘shift_jis’ is not a supported encoding name.

というエラーが出ました…!!

既に運用しているツールのソースからコピーしたので、
動かないはずはない!ということで、調べに調べた結果、
.NET Coreを利用している場合は、ちょっとした作業が追加になるとのこと。

Shift-JISは.NET Coreでは標準サポートされていない

解決には以下、2STEPが必要です。

STEP1

NugetよりSystem.Text.Encoding.CodePagesをダウンロードします。

STEP2

下記コードを記載する。※コードサンプルはC#を利用しています。

Encoding.RegisterProvider(CodePagesEncodingProvider.Instance);

上記対応により、ビルドが通るようになるはずです!
Shift-JISを利用するコードの前で宣言を書いてくださいね。

そもそもShift-JISを使うなということかもしれませんが、
まだ必要な場面は多いと思いますので、焦らず上記で対応しましょう!

よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次