Artikel ini terutamanya memperkenalkan Node.js untuk melaksanakan pengalihan keluar kelompok pengepala fail BOM. Artikel ini memberikan kod pelaksanaan secara langsung.
Seorang bekas rakan sekerja menulis alat, tetapi terdapat pepijat Selepas menggantikan fail, format fail asal ditukar kepada utf8 BOM jenis XML dengan BOM ini mungkin tidak dibaca di bawah Mac, jadi saya Anda perlu menulis alat untuk mengendalikannya.
Malah, idea ini agak mudah mula-mula melintasi direktori, kemudian membaca direktori, keluarkan tiga bait pertama fail, dan kemudian simpannya sebagai fail dalam format UTF-8 kod:)
var fs = require('fs'); var path = "目标路径.."; function readDirectory(dirPath) { if (fs.existsSync(dirPath)) { var files = fs.readdirSync(dirPath); files.forEach(function(file) { var filePath = dirPath + "/" + file; var stats = fs.statSync(filePath); if (stats.isDirectory()) { console.log('\n读取目录: ', filePath, "\n"); readDirectory(filePath); } else if (stats.isFile()) { var buff = fs.readFileSync(filePath); if (buff[0].toString(16).toLowerCase() == "ef" && buff[1].toString(16).toLowerCase() == "bb" && buff[2].toString(16).toLowerCase() == "bf") { //EF BB BF 239 187 191 console.log('\发现BOM文件:', filePath, "\n"); buff = buff.slice(3); fs.writeFile(filePath, buff.toString(), "utf8"); } } }); } else { console.log('Not Found Path : ', dirPath); } } readDirectory(path);
Di atas adalah keseluruhan kandungan bab ini Untuk lebih banyak tutorial berkaitan, sila lawati Tutorial Video Node.js!