之前的同事写了一个工具,但有bug,就是在替换文件后原文件的格式变成utf8 BOM了,这种带BOM的XML在Mac下可能读取不出来,所以就需要写个工具处理一下。
其实思路比较简单,首先遍历目录,然后读取目录,将文件头三个字节去除掉,然后保存为utf-8格式的文件即可,直接上代码吧 :)
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读取目录:\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);
本文向大家介绍PHP批量去除BOM头代码分享,包括了PHP批量去除BOM头代码分享的使用技巧和注意事项,需要的朋友参考一下
本文向大家介绍PHP批量去除BOM头内容信息代码,包括了PHP批量去除BOM头内容信息代码的使用技巧和注意事项,需要的朋友参考一下 什么是bom头? 在utf-8编码文件中BOM在文件头部,占用三个字节,用来标示该文件属于utf-8编码,现在已经有很多软件识别bom头,但是还有些不能识别bom头,比如PHP就不能识别bom头,这也是用记事本编辑utf-8编码后执行就会出错的原因了。 批量去除bom
本文向大家介绍BAT批量去除文件首行以及批量合并文件脚本,包括了BAT批量去除文件首行以及批量合并文件脚本的使用技巧和注意事项,需要的朋友参考一下 bat批量去除文件首行 将一批文件合并到一个文件
本文向大家介绍Python实现批量下载文件,包括了Python实现批量下载文件的使用技巧和注意事项,需要的朋友参考一下 Python实现批量下载文件 其他网友的方法: 以上便是本文给大家分享的全部内容了,小伙伴们可以测试下哪种方法效率更高呢。
本文向大家介绍asp.net实现批量删除实例,包括了asp.net实现批量删除实例的使用技巧和注意事项,需要的朋友参考一下 本文实例讲述了asp.net实现批量删除功能的方法。对于asp.net的学习有一定的参考价值。分享给大家供大家参考之用。具体实现方法入戏: .aspx文件代码如下: .cs 文件代码如下: 感兴趣的朋友可以调试运行一下本文实例,学有余力的朋友还可以对代码作出改进以完善其功能。
本文向大家介绍ASP.NET MVC实现批量文件上传,包括了ASP.NET MVC实现批量文件上传的使用技巧和注意事项,需要的朋友参考一下 根据项目需要,研究了一下如何在ASP.NETMVC下实现批量文件上传。首先,介绍单文件上传;然后,介绍多文件上传如何实现。 一、单文件上传 单文件上传的原理是将文件数据放入request中,由页面直接传递至后台controller中,类似于view和contr