码迷,mamicode.com
首页 > 其他好文 > 详细

使用gulp将文件转码至utf-8格式

时间:2018-11-20 22:57:54      阅读:190      评论:0      收藏:0      [点我收藏+]

标签:http   cond   检查   参考   css   运行   文件夹   var   convert   

在前两篇文章中,我除了看《MySQL必知必会》之外,还参考了《SQL基础教程(第2版)》。但是把参考这本书里的SQL语句导进新建的数据库时遇到了点麻烦:我在运行SQL文件后发现表中中文字符全部乱码。在检查文件格式之后发现,随书给出的SQL文件的编码是GB2312……那就先得把这么些文件转成utf-8格式才能适合同样是uft8编码类型的数据库。

经过一番搜索,我找到了gulp-utf8-convert这么个插件可以将文件编码转为utf-8。随书给出的文件目录如下

├─Ch0
│      0.sql
│      0.txt
│
├─Ch1
│  ├─1_1
│  │      1_1.sql
│  │      1_2.sql

可以给出如下gulpfile.js

var gulp = require(‘gulp‘);
var utf8Convert = require(‘gulp-utf8-convert‘);
 
gulp.task(‘firstMenu‘,function() {
    gulp.src("./Sample/*.sql")
        .pipe(utf8Convert())
        .pipe(gulp.dest(‘./sql基础教程‘));
});
gulp.task(‘secondMenu‘,function() {
    gulp.src("./Sample/**/*.sql")
        .pipe(utf8Convert())
        .pipe(gulp.dest(‘./sql基础教程‘));
});
gulp.task(‘default‘, [‘firstMenu‘, ‘secondMenu‘]);

但是运行之后,发现sql基础教程文件夹里面的文件编码并没有改过来,然后通过查看node_modules/gulp-utf8-convert/index.js时后发现,这个插件是对文件类型有限制的,相应的解决办法是将index.js
中的第30行(v0.0.7)

var isTextFile = /^\.(js|ts|coffee|css|less|sass|html?|tpl|txt|xml|json|ejs|jade|sql)$/.test(path.extname(fileName));

加上sql,再运行一遍就可以起作用了,起作用时,可以在console里看见有红色字体的[WARN] file CreateTableShopProduct.sql is not encoded in utf-8, it may be encoded in GB2312字样

使用gulp将文件转码至utf-8格式

标签:http   cond   检查   参考   css   运行   文件夹   var   convert   

原文地址:https://www.cnblogs.com/wadezhou/p/9991801.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!