> 웹 프론트엔드 > JS 튜토리얼 > Nodejs_node.js에서 중국어 파일 인코딩 문제 읽기, 이메일 보내기 및 예약된 작업 예제

Nodejs_node.js에서 중국어 파일 인코딩 문제 읽기, 이메일 보내기 및 예약된 작업 예제

WBOY
풀어 주다: 2016-05-16 16:22:41
원래의
1464명이 탐색했습니다.

nodejs로 중국어 파일을 읽는 데 시간이 많이 걸렸습니다. 인터넷에 다양한 해결 방법이 있었지만 그 중 아무 것도 해결되지 않았습니다.

다음 세 가지 지식 포인트가 프로젝트에서 추출됩니다. 스크립트를 별도로 실행하려면 중국어 변환 모듈을 설치하는 등 글로벌 모드를 사용하여 모듈을 설치해야 합니다. 앞으로 다른 일들도):

코드 복사 코드는 다음과 같습니다.

npm install -g iconv-lite

npm install -g nodemailer

npm install -g node-schedule

1. Nodejs에서 중국어 파일 인코딩 문제를 읽는 중

텍스트 파일(물론 csv 파일 등도 가능) test.txt, text.csv를 준비하고, nodejs 파일 test.js는 다음과 같습니다.

코드 복사 코드는 다음과 같습니다.

var iconv = require('iconv-lite');
var fs = require('fs');

var fileStr = fs.readFileSync('D:\test.csv', {encoding:'binary'});
var buf = new Buffer(fileStr, 'binary');
var str = iconv.decode(buf, 'GBK');

console.log(str);

파일을 직접 읽어보시면 내용이 깨져서 못믿으시면 시도해보셔도 됩니다. 먼저 바이너리 인코딩을 사용하여 균일하게 읽은 다음 GBK를 사용하여 디코딩해야 합니다. 실행 결과는 다음과 같습니다.

더 보기: iconv-lite

2. nodejs로 이메일 보내기

아무 말도 하지 말고 코드를 직접 작성하세요. 간단하고 이해하기 쉽습니다.

코드 복사 코드는 다음과 같습니다.

var nodemailer = require('nodemailer');

//이메일 구성
var Transporter = nodemailer.createTransport('SMTP',{
서비스: '163qiye',
인증: {
         사용자: 'zhoujie0111@126.com',
패스: '123456',
}
});

//이메일 보내기
var sendmail = 함수(html){
var 옵션 = {
~ >                  받는사람:"zhoujie0111@126.com,zhoujie0111@126.com",
              참조:'zhoujie0111@126.com'
}
​ option.subject = '5년 전 세운 5개년 계획'
​ option.html=html;
Transporter.sendMail(옵션, 함수(오류, 응답)){
          if(오류){
console.log("실패: " error);
         }그 외{
console.log("성공: " response.message);
}
});
}

//이메일을 보내려면 전화하세요

sendmail("이메일 내용:
2012년에 약속하고 2011년에 계획했기 때문에 2013년에 했어야 했던 2014년 목표를 2015년 목표로 달성하는 것입니다!");

더 보기:

노드메일러

3. nodejs 예약 작업

이를 사용하는 방법은 다양합니다. Linux crontab 구문에 익숙하다면 훨씬 더 간단할 것입니다. 내 Zou의 이 예는 매우 조화롭습니다. 하하:


코드 복사 코드는 다음과 같습니다.

var 일정 = require('node-schedule');

/*방법 1:
작업을 실행할 특정 시간을 지정하세요
*/
var 일정 = require('node-schedule');
var 날짜 = 새 날짜(2014, 12, 31, 16, 1, 0);

var j = Schedule.scheduleJob(날짜, 함수(){
console.log('2015년이 곧 다가옵니다.');
});

/*방법 2:
매 시간마다 실행하는 데 몇 분
*/
var rule = 새 일정.RecurrenceRule();
rule.분 = 1;
var j = Schedule.scheduleJob(rule, function(){
console.log('지금은 정말 행복해요!');
});

/*방법 3:
크론탭과 유사
*/
var j = Schedule.scheduleJob('1 * * * *', function(){
console.log('애프터눈 티 시간입니다!');
});

실행 결과가 더 조화로워요, 하하:

첫 번째 예약된 작업이 왜 실행되지 않는지 궁금하지 마세요. 이는 그리니치 표준시이므로 실행되기 전에 8시간을 기다려야 합니다. 하하~~

더 보기: 노드-스케줄

하루 동안 슬픈 음악을 듣고 나면 들을수록 행복해진다. ㅎㅎ

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
최신 이슈
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿