طراحی سایت ساناتک

برای خواندن محتوای فایل ها از دو روش blocking و nonblocking می توانیم استفاده کنیم. ابتدا یک فایل متنی بسازید و متنی داخل آن بنویسید.

خواندن فایل به روش blocking

برای خواندن فایل به این روش از ماژولی به نام "fs" استفاده می کنیم. به کد زیر دقت کنید

var fs =require ("fs");
var content= fs.readFileSync("test.txt");
console.log (content);

محتوا را درون متغیر content ذخیره کردیم. اما دقت کنید که این محتوا از نوع باینری است. می توانید این محتوا را با دستور consol.log ببینید.

خواندن فایل در node.js

از تابع toString  می توانید باری تبدیل محتوای فایل به متن استفاده کنید.این راه خواندن فایل به روش block بود. اما روش دیگر چگونه است.

خواندن فایل به روش nonblocking

در این روش وجود ارور در فایل را چک می کنیم. به کد زیر دقت کنید

var fs =require ("fs");
fs.readFile('text.txt' , function(err,content){
      if(err)  {
                  return console(err);
               }
       console.log (content.toString());
});

حال به سراغ فضای وب می رویم. کد زیر را درون یک برنامه بنویسیید و محتوای یک فایل متنی را بر روی صفحه نمایش دهید.

var fs =require ("fs");
var http=require("http");
http.creatServer(function(request,response){
           response.writrHead(200,{
                   'Server' : 'NodeJs-server',
                   'Content-Type' : 'Text/html,
          });
fs.readFile('text.txt' , function(err,content){
      if(err)  {
                  return console(err);
               }
       respone.end (content.toString());
});
}).listen(80);

اگر هم بخواهید فایل را روش blocking در فضای وب نشان دهید بدین ترتیب عمل کنید

var fs =require ("fs");
var http=require("http");
http.creatServer(function(request,response){
           response.writrHead(200,{
                   'Server' : 'NodeJs-server',
                   'Content-Type' : 'Text/html,
          });
var content= fs.readFileSync("text.txt");
           respone.end (content.toString());
}).listen(80);

دقت کنید در دستور response می توانیم از کدهای html استفاده کنیم.

response.end ("<h1>" content.toString "</h1> );