編集:私は間違っていた;)
cmd.exeUTF-8を受け入れるんが、あなたはそれを保存することを確認する必要がなくてBOM、ファイルの先頭に。
これが2番目のテストです。chcp 65001バッチファイルの先頭で使用できます。

バッチファイルを UTF-8タイプにすることはできません。ASCIIである必要があります。Cmd.exe別の形式を受け入れないだけです。私は簡単なテストを行い、キャラクターを使用できますが、いくつかの作業が必要です。
でファイルを作成test.batしecho Å Ä Öます。formatで保存しますANSI/ASCII。を開き、使用cmd.exe方法を確認します(Unicode文字を表示するため)。cmd.exeLucida Console
ファイルを入力すると、古いDOS文字として文字が表示されます。ここで翻訳チャートを見ることができます。
「Windows Ansi」に切り替えると、文字を含むコードページ(つまり、西ヨーロッパラテン語)chcp 1252が正しく表示されます。それらがそれぞれのユーティリティに転送されるかどうかは、そのユーティリティに依存します。
しかし、なぜこれのためにバッチファイルを作成するのですか?VB.netでコーディングすることはできませんか?

編集2#:
これはあなたが設定Lucida Consoleする方法ですcmd.exe:

BOMUTF-8ファイルの先頭の3つの文字です。(\xEF\xBB\xBF)。
VB.netでは、次のようなファイルを作成しますBOM。
Dim utf8WithoutBom As New System.Text.UTF8Encoding(False)
'^^^^^'
Using sink As New StreamWriter("Foobar.txt", False, utf8WithoutBom)
sink.WriteLine("...")
End Using