File System
Node پوشه ورودی/خروجی را با به کار گیری از wrapper های بی آلایش پیرامون توابع استاندارد
طراحی اپلیکیشن در مشهد POSIX طراحی می نماید.ماژول Node File System (fs) را می شود به شکل پایین بهره برد :
var fs = require(\"fs\")
Synchronous در مقابل Asynchronous
هر روال در ماژول fs دارنده گونه های synchronous و همینطور asynchronous میباشد.
متدهای asynchronous واپسین پارامتر را تحت عنوان جواب به فراخوانی تابع completion و اولین پارامتر تابع callback را تحت عنوان غلط در حیث میگیرند.
خوب میباشد به مکان طرز synchronous از یک شیوه asynchronous استعمال نمائید، چون اولین هیچ وقت طرحی را در حین اجرای آن block نمی نماید، در حالی که طرز دوم این شغل را می نماید.
var fs = require(\"fs\");
var data = \'\';
// Create a readable stream
var readerStream = fs.createReadStream(\'input.txt\');
// Set the encoding to be utf8.
readerStream.setEncoding(\'UTF8\');
// Handle stream events --> data, end, and error
readerStream.on(\'data\', function(chunk) {
data += chunk;
});
readerStream.on(\'end\',function() {
console.log(data);
});
readerStream.on(\'error\', function(err) {
console.log(err.stack);
});
console.log(\"Program Ended\");
یک پوشه را بر طبق با سینتکس تحت گشوده فرمائید :
fs.open(path, flags[, mode], callback)
پارامتر ها :
path : این فن ای میباشد که اسم پوشه دربرگیرنده path را داراست.
flags : فلگ ها اخلاق و رفتار فایلی که بایستی گشوده گردد را نماد میدهد.
mode : شرایط فولدر را تهیه و تنظیم می نماید، ولی تنها در شرایطیکه که فولدر ساخت و ساز گردیده باشد. به صورت پیش فرض 0666، قابل تلاوت و تایپ کردن میباشد.
callback : این تابع callback میباشد که دو آرگومان (err, fd) اخذ می نماید.
اخذ داده ها فولدر :
اذن دهید یک فولدر js با اسم main.js با کد تحت ساختوساز کنیم :
var fs = require(\"fs\");
console.log(\"Going to get file info!\");
fs.stat(\'input.txt\', function (err, stats) {
if (err) {
return console.error(err);
}
console.log(stats);
console.log(\"Got file info successfully!\");
// Check file type
console.log(\"isFile ? \" + stats.isFile());
console.log(\"isDirectory ? \" + stats.isDirectory());
});
در حال حاضر main.js را ایفا نمایید تا فیض را مشاهده کنید :
$ node main.js
خروجی را وریفای نمائید :
Going to get file info!
{
dev: 1792,
mode: 33188,
nlink: 1,
uid: 48,
gid: 48,
rdev: 0,
blksize: 4096,
ino: 4318127,
size: 97,
blocks: 8,
atime: Sun Mar 22 2015 13:40:00 GMT-0500 (CDT),
mtime: Sun Mar 22 2015 13:40:57 GMT-0500 (CDT),
ctime: Sun Mar 22 2015 13:40:57 GMT-0500 (CDT)
}
Got file info successfully!
isFile ? true
isDirectory ? false
بستن یک فولدر :
fs.close(fd, callback)
پارامتر ها :
fd : این توصیفگر پوشه میباشد که به وسیله اسلوب ()fs.open بازگردانده گردیده است.
callback : هیچ آرگومان دیگری به جز یک استثنای ممکن برای جواب به تماس تکمیلی داده نشده میباشد.
نمونه :
یک فولدر js با اسم main.js با کد ذیل ساخت و ساز کنیم :
var fs = require(\"fs\");
var buf = new Buffer(1024);
console.log(\"Going to open an existing file\");
fs.open(\'input.txt\', \'r+\', function(err, fd) {
if (err) {
return console.error(err);
}
console.log(\"File opened successfully!\");
console.log(\"Going to read the file\");
fs.read(fd, buf, 0, buf.length, 0, function(err, bytes) {
if (err) {
console.log(err);
}
// Print only read bytes to avoid junk.
if(bytes > 0) {
console.log(buf.slice(0, bytes).toString());
}
// Close the opened file.
fs.close(fd, function(err) {
if (err) {
console.log(err);
}
console.log(\"File closed successfully.\");
});
});
});
در حال حاضر main.js را ایفا فرمائید تا فیض را مشاهده کنید :
$ node main.js
خروجی را وریفای نمایید :
Going to open an existing file
File opened successfully!
Going to read the file
Tutorials Point is giving self learning content
to teach the world in simple and easy way!!!!!
File closed successfully.
delet یک فولدر :
fs.unlink(path, callback)
نمونه :
یک پوشه js با اسم main.js با کد پایین ساخت و ساز کنیم :
var fs = require(\"fs\");
console.log(\"Going to delete an existing file\");
fs.unlink(\'input.txt\', function(err) {
if (err) {
return console.error(err);
}
console.log(\"File deleted successfully!\");
});
در حال حاضر main.js را ایفا فرمایید تا فیض را ملاحظه کنید :
$ node main.js
خروجی را وریفای فرمائید :
Going to delete an existing file
File deleted successfully!
ایجاد کرد یک دایرکتوری :
fs.mkdir(path[, mode], callback)
(mode : این تایید صلاحیت دایرکتوری میباشد که می بایست تهیه خواهد شد. پیش فرض 0777 میباشد.)
نمونه :
یک فولدر js با اسم main.js با کد ذیل ساخت کنیم :
var fs = require(\"fs\");
console.log(\"Going to create directory /tmp/test\");
fs.mkdir(\'/tmp/test\',function(err) {
if (err) {
return console.error(err);
}
console.log(\"Directory created successfully!\");
});
خروجی را وریفای فرمائید :
Going to create directory /tmp/test
Directory created successfully!
تلاوت یک دایرکتوری :
fs.readdir(path, callback)
حذف یک دایرکتوری :
fs.rmdir(path, callback)