Muni Bus

パソコンの操作方法や設定方法を忘れないようにメモしています。ブログを一回引っ越ししているので、所々表示がかなり乱れています・・・

【Visual Studio 2022】統合開発環境の作成するソースファイルの文字コードと改行コード

Visual Studio 2022がデフォルトで作成するソースファイルの、文字コードと改行コードを調べた。 まず、Visual Basicのプロジェクトを新規作成する。初期状態でForm1.vbというファイルが作成済みであるので、その1行目に「' 文字コード」とだけ追記して(次のようになるはず)、保存。ソリューションを閉じる。

' 文字コード
Public Class Form1

End Class

このファイルをPowerShellのFormat-Hexコマンドレットでダンプしてみる。

PS > Format-Hex .\Form1.vb
           パス: ○○○\Form1.vb
           00 01 02 03 04 05 06 07 08 09 0A 0B 0C 0D 0E 0F
00000000   EF BB BF 27 20 E6 96 87 E5 AD 97 E3 82 B3 E3 83  ' æå­ã³ã
00000010   BC E3 83 89 0D 0A 50 75 62 6C 69 63 20 43 6C 61  ¼ã..Public Cla
00000020   73 73 20 46 6F 72 6D 31 0D 0A 0D 0A 45 6E 64 20  ss Form1....End
00000030   43 6C 61 73 73 0D 0A                             Class..

先頭に「EF BB BF」が付いていることが確認できる。この3バイトはBOM付きUTF-8を示すものである。「0D 0A」が四箇所で確認でき、改行コードはCR+LFであることがわかる。 BOMの後の4文字は「' 文字」としているが、「'」(0x27)、「 」(0x20)、「文」(0xE69687)、「字」(0xE5AD97)であるため(文字の後の16進数はすべてUTF-8)、BOMのとおりに、このファイルはBOM付きUTF-8で保存されていることがわかる。