全网整合营销服务商

营销型网站+SEO优化+关键词快排=一站式服务

免费咨询热线:15959292472

[铜川seo公司到久澳]利用Node.js进行文件编码格式转换

  这次给大家带来利用Node●□.js进行文件编码格式转换,利用Node□•●◇.js进行文件编码格式转换的注意事项有哪些,下面就是实战案例,一起来看一下。

  

ASCII编码就比较蛋疼,通过搜索网上资源,反复测试对比,18 2020.10 [长沙做网站seo公司]appcan是什么 AppCan就是国内的一个Hybrid混合应用开发服务平台,帮助开发者快速的进行App开发,帮助企业实现移动互联网化□☆▷-。 AppCan是一款Hybrid跨平台移动应用开发工具,使用了HTML5、CSS3和JavaS,最终形成下面比较靠谱的方法(有一些 EditPlus显示编码为utf-8但node■●.js库返回的却是其它编码>_<)

  

判断修改是否无误◆◇,只需要在修改完之后,通过SVN提交◆▷,池州市小程序开发哪家好浏览提交列表▲-,双击任意一项待提交文件,如果显示下图所示的对话框,则说明修改成功,其它都会看到中文反而变成乱码了

  

 

  

var fs = require('fs');
var chardet = require('chardet'=▲■;);
var jschardet = require("-★;jschardet");
var encoding = require("encoding")-•☆△;
var path = "lua目录"◇◁★;…□▼★;
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读取目录:\n', filePath▪▪◆▼, "◆-;\n"▲◇-■;);
 readDirectory(filePath)■-;
 } else if (stats.isFile() &★☆;& /\◇▪=▽.lua$/.test(filePath)) {
 var buff = fs.readFileSync(filePath)●◇◇;
 if (buff.length &&○◇; 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('\n发现BOM文件:'○▼★◇;☆△, filePath, "△-◆;\n");
 buff = buff.slice(3);
 fs.writeFile(filePath-…▼■, buff.toString(), "utf8"▪▽;);
 }
 // { encoding: 'UTF-8'◁△•-, confidence: 0.99 }
 // var charset = chardet.detectFileSync(filePath);
 var info = jschardet…●◆.detect(buff);
 if (info.encoding == "◆▲◁;GB2312" 

 

   info.encoding == "ascii") { var resultBuffer = encoding=▲▲▲.convert(buff●☆▪, "UTF-8"-△☆…, info.encoding); fs.writeFile(filePath●☆▲☆, resultBuffer, "●◇;utf8"▷-;); } else if (info.encoding != "UTF-8" && chardet.detectFileSync(filePath) != "UTF-8"★▽▪;) { if (buff□★☆△.toString().indexOf("\r\n") > -1) { var resultBuffer = encoding●▷•▲.convert(buff, "UTF-8"☆-, "GBK"); fs.writeFile(filePath, resultBuffer, "■=△=;utf8"); } } } }); } else { console.log('Not Found Path ○-▽: '▽▲○◆, dirPath); } } readDirectory(path)…•●•;

注意上面的判断◆▲,[铜川seo公司到久澳]第一个明确是 GB2312或者ascii时,东莞市小程序开发哪家好直接将相应的编码转为 utf-8★-☆▷。而如果返回是格式,先判断是否有PC下的换行符,如果有则全部将它视为GBK进行处理。云浮市小程序开发哪家好

  

整个思路其实是比较简单,难点在于如果判断文件编码格式。这个真的很难>△◇…;_<▲★□■;,获取原编码格式后,调用 encoding.convert(buff, 目标编码格式 , 原始编码格式 ); 便可得到所需要的编码▼◇▲。如果有空而且有兴趣□◆,可以下载Notepad++的源码•▲-,看它是如何判断文件的编码格式

  相信看了本文案例你已经掌握了方法,更多精彩请关注久澳传媒编程栏目其它相关文章☆▽■□!

  推荐阅读▽●◆:

  

js基础提升学习之三种内置对象

  

js基础提升学习之基本数据类型

  以上就是利用Node.js进行文件编码格式转换的详细内容,更多请关注久澳传媒编程栏目其它相关文章…☆!

[铜川seo公司到久澳]利用Node.js进行文件编码格式转换

您的项目需求

*请认真填写需求信息,我们会在24小时内与您取得联系。