Mengkonversi file teks ke UTF-8 pada prompt perintah Windows

13

Saya perlu mengonversi file teks ke format UTF-8 melalui command prompt Windows. Ini perlu dilakukan pada komputer lain dan saya tidak memiliki hak untuk menginstal perangkat lunak pada mesin itu. Saya butuh sesuatu seperti:

c:\notepad   source-file target-file --encoding option

Apakah ada utilitas command prompt Windows yang dapat melakukannya?

pengguna1107888
sumber

Jawaban:

26

Saya perlu mengonversi file teks ke format utf-8 melalui command prompt windows

Anda dapat dengan mudah melakukan ini dengan PowerShell:

Get-Content .\test.txt | Set-Content -Encoding utf8 test-utf8.txt

Bacaan lebih lanjut

DavidPostill
sumber
Selain itu, Anda perlu beralih ke PowerShell untuk menjalankan perintah dan kemudian keluar untuk kembali ke jendela command prompt.
user1107888
Memang. Atau jalankan langsung di shell PowerShell.
DavidPostill
@ DavidvidPostill tahu bagaimana kita dapat mengkonversi lebih dari satu file yaitu pemrosesan file batch dengan baris perintah yang sama?
vibs2006
1
@ vibs2006 Gunakan ForEachperulangan. Lihat ForEach - PowerShell - SS64.com .
DavidPostill
1

Gunakan iconvdari paket GNUWin32. Ini jauh lebih cepat, terutama jika file Anda sekitar atau lebih dari 1 Gb.

"C:\Program Files (x86)\GnuWin32\bin\iconv.exe" -f cp1251 -t utf-8 source.txt > result.txt
Raul Nk
sumber
apa yang dilakukan cp1251bendera?
lacostenycoder
itu adalah pengkodean input. en.wikipedia.org/wiki/Windows-1251
nadre
1

Berikut ini untuk setiap file * .text yang dikonversi menjadi file * .sql:

foreach ($file in get-ChildItem *.txt) {
    Echo $file.name
    Get-Content $file | Set-Content -Encoding utf8 ("$file.name" +".sql")
 }
nobjta_9x_tq
sumber
setelah menjalankan beberapa file sql, terkadang error, saya memutuskan untuk menggunakan linux dengan perintah iconv =))
nobjta_9x_tq