He estado intentando mucho tiempo sobre los nodejs leyendo archivos chinos. Al final, ninguno de ellos se aplica a mí. Afortunadamente, lo resolví.
Los siguientes tres puntos de conocimiento se extraen del proyecto. Para ejecutar scripts por separado, debe usar el modo global para instalar el módulo, como instalar el módulo de conversión chino (esto también se requiere para otros propósitos posteriores):
La copia del código es la siguiente:
NPM instalación -g iconv -lite
NPM Install -G NodeMailer
NPM Install -G Node -Schedule
1. Problemas de NodeJs Lectura de la codificación de archivos chinos
Prepare un archivo de texto (por supuesto, también puede ser un archivo CSV, etc.) test.txt y text.csv, y el archivo nodejs test.js es el siguiente:
La copia del código es la siguiente:
var iconv = require ('iconv-lite');
var fs = require ('fs');
var filestr = fs.ReadFilesync ('d: //test.csv', {coding: 'binary'});
var buf = new Buffer (Filestr, 'binario');
var str = iconv.decode (buf, 'gbk');
console.log (str);
Si lee el archivo directamente, está confuso. Si no lo crees, puedes probarlo. Es necesario leerlo primero en la codificación binaria y luego decodificarlo en GBK. Los resultados de la operación son los siguientes:
Ver más: iconv-lite
2. NodeJs Enviar correo electrónico
No quiero decir nada, solo subir el código, es fácil de entender:
La copia del código es la siguiente:
var nodemailer = require ('nodemailer');
// Configurar el correo electrónico
var transmisor = nodemailer.createTransport ('smtp', {
Servicio: '163qiye',
Auth: {
Usuario: '[email protected]',
Pase: '123456',
}
});
// Enviar correo electrónico
var sendmail = function (html) {
opción var = {
De: "[email protected]",
a: "[email protected], [email protected]",
CC:'[email protected] '
}
opción.subject = 'El plan de cinco años que hice hace 5 años'
opción.html = html;
Transporter.sendmail (opción, función (error, respuesta) {
if (error) {
console.log ("Fail:" + error);
}demás{
console.log ("éxito:" + respuesta.message);
}
});
}
// llama para enviar correo electrónico
Sendmail ("Contenido de correo: <br/> Mi objetivo para 2015 es lograr los objetivos de 2014 que debería haber hecho en 2013 porque hice una promesa en 2012 y planeé en 2011!");
Ver más: Nodemailer
3. Tareas cronometradas de NodeJS
Esto se usa de muchas maneras, y si está familiarizado con la sintaxis de Linux Crontab, será aún más simple. El ejemplo de mi zou es muy armonioso, jaja:
La copia del código es la siguiente:
Var programar = require ('nodo-schedule');
/*Método 1:
Especifique un cierto tiempo para realizar tareas
*/
Var programar = require ('nodo-schedule');
VAR fecha = nueva fecha (2014, 12, 31, 16, 1, 0);
var j = shiteb.scheduleJob (date, function () {
console.log ('2015 pronto llegará');
});
/*Método 2:
Cuantos minutos por hora
*/
var rule = new cryste.Recurrencerule ();
regla.minute = 1;
var j = shiteb.scheduleJob (regla, function () {
console.log ('I/' M muy feliz ahora! ');
});
/*Método tres:
Similar a Crontab
*/
var j = shiteb.scheduleJob ('1 * * * *', function () {
console.log ('es hora de té de la tarde!');
});
Los resultados de la operación son más armoniosos, jaja:
No se pregunte por qué no se ejecutó la primera tarea planificada, porque esta es la hora de Greenwich, y tarda 8 horas en ejecutarse. Jaja ~~
Ver más: Node-Schedule
Después de escuchar la música triste por un día, me volví más feliz cuanto más escuchaba. Ja ja