受託開発担当のRyuです。

先日、VisualStudio2017にて開発していたときの話です。
VSでの開発では久しく見なかった文字化けに遭遇しました。

原因を探してみると、どうやらファイルがsjisで保存されているのが問題なようです。
近年のVisualStudioは標準でutf8で作成してくれるはずなのになぜ?と考えて、思い当たりました。

そのときのプロジェクトは.NET Coreを使っており、dotnetCLIツールからテンプレートを使用して作成したものでした。
開発環境はwindowsだったのでコマンドプロンプトからdotnetコマンドを走らせた結果、コマンドプロンプトの標準文字コードであるsjisでファイルが作成されてしまっていたのです。

エンコーディングの問題は忘れた頃に背後から忍び寄ってくる!