Rumah > Artikel > hujung hadapan web > Cara kumpulan mengubah suai format pengekodan fail dalam kemahiran javascript_javascript
Contoh dalam artikel ini menerangkan kaedah kelompok mengubah suai format pengekodan fail dengan JavaScript. Kongsikan dengan semua orang untuk rujukan anda. Butirannya adalah seperti berikut:
Ringkasan:
Baru-baru ini, semasa saya membuat manual, saya menghadapi masalah "dokumen yang tidak betul". untuk menyimpannya sebagai utf8, ia akan menjadi tragis. Jadi saya menulis program untuk mengubah suai format pengekodan fail dalam kelompok.
Kod:
//Pakej pengenalan
var fs = memerlukan('fs'),
iconv = memerlukan('iconv-lite');
//Pembolehubah global
var root_path = './html',
Jenis_fail = ['html', 'htm'],
From_code = 'GBK',
to_code = 'UTF8';
/**
* Tentukan sama ada elemen berada dalam tatasusunan
* @tarikh 2015-01-13
* @param {[String]} elem [elemen untuk ditemui]
* @return {[bool]} [penerangan]
,*/
Array.prototype.inarray = function(elem) {
"gunakan ketat";
var l = ini.panjang;
manakala (l--) {
Jika (ini[l] === elem) {
kembali benar;
}
}
pulangkan palsu;
};
/**
* Fungsi transcoding
* @tarikh 2015-01-13
* @param {[String]} root [mengekodkan direktori fail]
* @return {[type]} [penerangan]
,*/
function encodeFiles(root) {
"gunakan ketat";
var files = fs.readdirSync(root);
files.forEach(function(fail) {
var pathname = root '/' fail,
stat = fs.lstatSync(nama laluan);
Jika (!stat.isDirectory()) {
var name = file.toString();
Jika (!file_type.inarray(name.substring(name.lastIndexOf('.') 1))) {
kembali;
}
fs.writeFile(pathname, iconv.decode(fs.readFileSync(pathname), from_code), {
pengekodan: to_code
}, fungsi(err) {
Jika (err) {
silap buang;
}
});
} lain {
encodeFiles(pathname);
}
});
}
encodeFiles(root_path);
Ringkasan:
Atur cara di atas menyokong direktori berbilang peringkat, dan fail yang sama tidak boleh dikendalikan beberapa kali, jika tidak, aksara yang bercelaru akan muncul.
Kod lengkap boleh dimuat turun dari tapak ini dengan mengklik di sini.
Saya harap artikel ini akan membantu reka bentuk pengaturcaraan JavaScript semua orang.