1. 程式人生 > >Nodejs:寫檔案

Nodejs:寫檔案

optfile.js

//-------------optfile.js-------------------------
var fs = require('fs');
module.exports = {
	writefile: function (path, data, recall) { //非同步方式
		fs.writeFile(path, data, function (err) {
			if (err) {
				throw err;
			}
			console.log('It\'s  saved!'); //檔案被儲存
			recall("寫檔案成功");
		});
	},
	writeFileSync: function (path, data) { //同步方式
		fs.writeFileSync(path, data);
		console.log("同步寫檔案完成");
	},
}

router.js

var optfile = require('../model/optfile2.js');
module.exports = {
	write: function (req, res) {
		function recall(data) {//閉包函式、回撥函式
			console.log(data.toString());
			res.write(data);
			res.end(""); //不寫則沒有htpp協議尾
		}
		optfile.writefile('./view/02.txt', "+++++我的寫檔案+++++", recall);
	}
}
//---------寫檔案-----------
var http = require('http');
var url = require('url');
var router = require('./model/router');
http.createServer(function(request, response) {
	response.writeHead(200, {
		'Content-Type': 'text/html;    charset=utf-8'
	});
	if(request.url !== "/favicon.ico") {
		var pathname = url.parse(request.url).pathname;
		pathname = pathname.replace(/\//, ''); //替換掉前面的/
		if(pathname){
			router[pathname](request, response);
		}else{
			response.end("ok");
		}
		
	}
}).listen(8000);
console.log('Server running at http://127.0.0.1:8000/');