Edit: aku salah;)
cmd.exetidak menerima UTF-8 tetapi Anda harus yakin untuk menyimpannya tanpa yang BOMpada awal file.
Ini tes kedua. Anda dapat menggunakan chcp 65001di awal file batch Anda.

File batch tidak bisa dari jenis UTF-8. Itu harus ASCII. Cmd.exetidak menerima format lain. Saya melakukan tes kecil dan Anda dapat menggunakan karakter Anda tetapi perlu beberapa pekerjaan.
Buat file test.batdengan echo Å Ä Ö. Simpan dengan format ANSI/ASCII. Buka a cmd.exedan pastikan cmd.exepenggunaan Anda Lucida Console(untuk menampilkan karakter Unicode).
Ketika Anda mengetik file itu akan menampilkan karakter sebagai karakter DOS lama. Anda dapat melihat grafik terjemahan di sini .
Ketika Anda beralih ke "Windows Ansi" - halaman kode (yaitu Latin Eropa Barat) dengan chcp 1252karakter ditampilkan dengan benar. Jika mereka juga ditransfer ke utilitas masing-masing tergantung pada utilitas itu.
Tapi mengapa Anda membuat file batch untuk ini? Tidak bisakah Anda hanya kode di VB.net?

Edit 2 #:
Ini adalah bagaimana Anda mengatur Lucida Consoledi cmd.exe:

Ada BOM3 karakter di awal file UTF-8. ( \xEF\xBB\xBF).
Dalam VB.net Anda akan menciptakan sebuah file tanpa sebuah BOMseperti ini:
Dim utf8WithoutBom As New System.Text.UTF8Encoding(False)
'^^^^^'
Using sink As New StreamWriter("Foobar.txt", False, utf8WithoutBom)
sink.WriteLine("...")
End Using