Ich habe viel Zeit mit NodeJS -Lesen chinesische Dateien versucht. Am Ende gilt keiner von ihnen für mich. Zum Glück habe ich es gelöst.
Die folgenden drei Wissenspunkte werden alle aus dem Projekt extrahiert. Um Skripte getrennt auszuführen, müssen Sie den globalen Modus verwenden, um das Modul zu installieren, z. B. das Installieren des chinesischen Konvertierungsmoduls (dies ist auch für andere nachfolgende Zwecke erforderlich):
Die Codekopie lautet wie folgt:
NPM install -g -iconv -lite installieren
npm install -g nodeMailer installieren
NPM Installation -g -Knotenplane
1. Fragen der NodeJS -Lesen chinesischer Dateikodierung
Bereiten Sie eine Textdatei vor (natürlich kann sie auch eine CSV -Datei usw. sein) test.txt und text.csv, und der NodeJS -Datei test.js ist wie folgt:
Die Codekopie lautet wie folgt:
var iconv = required ('iconv-lite');
var fs = fordert ('fs');
var filest = fs.readFilesync ('d: //test.csv', {codieren: 'binary'});
var buf = neuer Puffer (filest, 'binär');
var str = iconv.decode (buf, 'gbk');
console.log (str);
Wenn Sie die Datei direkt lesen, ist sie verstümmelt. Wenn Sie es nicht glauben, können Sie es versuchen. Es ist notwendig, es zuerst in binärer Codierung zu lesen und dann in GBK zu dekodieren. Die Betriebsergebnisse sind wie folgt:
Weitere: Iconv-Lite
2. Nodejs senden Sie eine E -Mail
Ich möchte nichts sagen, lade einfach den Code hoch, es ist leicht zu verstehen:
Die Codekopie lautet wie folgt:
var nodeMailer = required ('nodeMailer');
// E -Mail konfigurieren
var transmitter = nodeMailer.createtransport ('SMTP', {{
Service: '163qiye',
auth: {
Benutzer: '[email protected]',
Pass: '123456',
}
});
// E -Mail senden
var sendmail = function (html) {
var option = {
Von: "[email protected]",
An: "[email protected], [email protected]",
CC:'[email protected] '
}
Option.Subject = 'Der Fünfjahresplan, den ich vor 5 Jahren gemacht habe'
option.html = html;
Transporter.Sendmail (Option, Funktion (Fehler, Antwort) {
if (Fehler) {
console.log ("fail:" + fehler);
}anders{
console.log ("Erfolg:" + response.message);
}
});
}
// Rufen Sie an, um E -Mails zu senden
Sendmail ("Mail -Inhalt: <br/> Mein Ziel für 2015 ist es, die Ziele des Jahres 2014 zu erreichen, die ich 2013 hätte tun sollen, weil ich 2012 ein Versprechen gemacht und 2011 geplant habe!");
Weitere: nodeMailer
3. Nodejs zeitgesteuerte Aufgaben
Dies wird in vielerlei Hinsicht verwendet, und wenn Sie mit der Linux Crontab -Syntax vertraut sind, wird es noch einfacher sein. Das Beispiel meines Zous ist sehr harmonisch, haha:
Die Codekopie lautet wie folgt:
var schedule = require ('node-planische');
/*Methode 1:
Geben Sie eine bestimmte Zeit an, um Aufgaben auszuführen
*/
var schedule = require ('node-planische');
var Datum = neues Datum (2014, 12, 31, 16, 1, 0);
var j = plan.Schedulejob (Datum, function () {
console.log ('2015 wird bald kommen.');
});
/*Methode 2:
Wie viele Minuten pro Stunde
*/
var regel = neuer Zeitplan.RecurRencerule ();
Regel.minute = 1;
var j = plan.Schedulejob (Regel, function () {
console.log ('i/' M jetzt sehr glücklich! ');
});
/*Methode drei:
Ähnlich wie Crontab
*/
var j = plan.Schedulejob ('1 * * * *', function () {
console.log ('Es ist Zeit für Nachmittagstee!');
});
Die Betriebsergebnisse sind harmonischer, haha:
Wundern Sie sich nicht, warum die erste geplante Aufgabe nicht ausgeführt wurde, denn dies ist Greenwich -Zeit, und es dauert 8 Stunden, um auszuführen. Haha ~~
Weitere: Knotenschoner
Nachdem ich die traurige Musik für einen Tag gehört hatte, wurde ich glücklicher, je mehr ich zuhörte. Ha ha