はじめに
using (StreamWriter sw = new StreamWriter(filepath, false, Encoding.GetEncoding("shift_jis")))
{
...
}
.NETCoreで上記のようにEncoding.GetEncoding("shift_jis")を指定したところ、実行時にエラーが発生して、
(´-`).。oO(???)
となったので備忘録。
要するに、「"shift_jis"なんてしらないよ!」と怒られている。
やること
// ここを追加
System.Text.Encoding.RegisterProvider(System.Text.CodePagesEncodingProvider.Instance);
using (StreamWriter sw = new StreamWriter(filepath, false, System.Text.Encoding.GetEncoding("shift_jis")))
{
...
}
この一文を追加することで使用可能となる。
ここでは.NETFrameworkでサポートされている全てのエンコードを取得している。
おわりに
.NETCoreではサポートされているエンコーディングが限られているようです。