J'ai essayé beaucoup de temps à propos de Nodejs en lisant des fichiers chinois. En fin de compte, aucun d'entre eux ne s'applique à moi. Heureusement, je l'ai résolu.
Les trois points de connaissance suivants sont tous extraits du projet. Pour exécuter les scripts séparément, vous devez utiliser le mode global pour installer le module, comme l'installation du module de conversion chinois (cela est également requis à d'autres fins ultérieures):
La copie de code est la suivante:
NPM Install -g iconv-lite
NPM Install -g Nodemailer
NPM Install -g-G-Schedule
1. Problèmes de Nodejs Lire le codage des fichiers chinois
Préparez un fichier texte (bien sûr, il peut également s'agir d'un fichier CSV, etc.) test.txt et text.csv, et le fichier nodejs test.js est le suivant:
La copie de code est la suivante:
var iconv = require ('iconv-lite');
var fs = require ('fs');
var filestr = fs.readfilesync ('d: //test.csv', {coding: 'binary'});
var buf = nouveau tampon (filestr, «binaire»);
var str = iconv.decode (buf, 'gbk');
Console.log (STR);
Si vous lisez directement le fichier, il est brouillé. Si vous ne le croyez pas, vous pouvez l'essayer. Il faut d'abord le lire dans le codage binaire, puis le décoder dans GBK. Les résultats de l'opération sont les suivants:
Voir plus: iconv-lite
2. Nodejs Envoyer un e-mail
Je ne veux rien dire, il suffit de télécharger le code, c'est facile à comprendre:
La copie de code est la suivante:
var nodemailer = require ('nodemailer');
// Configurer le courrier électronique
var émetteur = nodemailer.createTransport ('smtp', {
Service: «163qiye»,
auth: {
Utilisateur: «[email protected]»,
Pass: '123456',
}
});
// Envoyer un e-mail
var sendmail = fonction (html) {
Var Option = {
De: "[email protected]",
à: "Zhoujie0111 @ 126.com, zhoujie0111 @ 126.com",
CC:'[email protected] '
}
option.subject = «Le plan quinquennal que j'ai fait il y a 5 ans»
option.html = html;
transporter.sendmail (option, fonction (erreur, réponse) {
if (error) {
console.log ("échoue:" + erreur);
}autre{
Console.log ("Success:" + Response.Message);
}
});
}
// Appel pour envoyer un e-mail
Sendmail ("Mail Content: <br/> Mon objectif pour 2015 est d'atteindre les objectifs de 2014 que j'aurais dû faire en 2013 parce que j'ai fait une promesse en 2012 et prévu en 2011!");
Voir plus: nodemailer
3. Tâches chronométrées de Nodejs
Ceci est utilisé à bien des égards, et si vous connaissez la syntaxe Linux Crontab, ce sera encore plus simple. L'exemple de mon Zou est très harmonieux, haha:
La copie de code est la suivante:
var calendrier = require ('nœud-schedule');
/ * Méthode 1:
Spécifiez un certain temps pour effectuer des tâches
* /
var calendrier = require ('nœud-schedule');
Var Date = Nouvelle Date (2014, 12, 31, 16, 1, 0);
var j = schedule.schedulejob (date, fonction () {
Console.log («2015 viendra bientôt.»);
});
/ * Méthode 2:
Combien de minutes par heure
* /
var règle = nouveau calendrier.recurrencerule ();
Rule.Minute = 1;
var j = schedule.schedulejob (règle, fonction () {
Console.log ('je /' est très heureux maintenant! ');
});
/ * Méthode trois:
Semblable à Crontab
* /
var j = schedule.schedulejob ('1 * * * *', fonction () {
Console.log («Il est temps pour le thé de l'après-midi!»);
});
Les résultats de l'opération sont plus harmonieux, haha:
Je ne me demande pas pourquoi la première tâche planifiée n'a pas été exécutée, car c'est le temps de Greenwich, et il faut 8 heures pour s'exécuter. Haha ~~
Voir More: Node-Schedule
Après avoir écouté la musique triste pendant une journée, je suis devenu plus heureux plus j'écoutais. Ha ha