首页 Nodejs正文

node的简单文件操作

景先 Nodejs 2015-04-03 948 0 node.js

*需要简单说明,node里大部分操作都是异步的
何为异步?
异步:前一个操作没有处理完毕,后一个可以继续,即,可以同时执行多个操作
何为同步?
同步:前一个操作没有处理完毕,后一个没法开始


node.png

1.读文件的内容:

var fs=require('fs');
fs.readFile('a.txt',function(err,data){
    if(err){
        console.log('404');    
    }else{
        console.log(data);
    }
});

当然你会发现读取出来的都是看不懂的 buffer,当然还可以接受一个参数

var fs=require('fs');
fs.readFile('a.txt','utf-8',function(err,data){
    if(err){
        console.log('404');    
    }else{
        console.log(data);
    }
});

这样你在看下,是不是就看懂了许多,不过,其实也没必要加这个utf-8这个参数,因为正常情况都是,把读取出来的数据,扔回浏览器那边
这种读取方式是异步的?一般情况下服务器的操作都是异步的
不过还是看下同步操作:

var fs=require('fs');
var data=fs.readFileSync('a.txt');
console.log(data);

 2. 创建文件并写入内容

var fs=require('fs');
fs.writeFile('b.txt','welcome to itstrive.com',function(err){
    console.log(err);
});

此方法不支持’a/b.txt’这种用法,也就是只能创建文件,目录不行

3. 删除文件

var fs=require('fs');
fs.unlink('b.txt',function(err){
    console.log(err);
});

 4. 修改文件名称(文件重命名)

var fs=require('fs');
fs.rename('a.txt','r_a.txt',function(err){
    console.log(err);
});

 5. 查看文件信息(状态)

var fs=require('fs');
fs.stat('r_a.txt',function(err,data){
    if(err){
        console.log('404');
    }else{
        console.log(data);    
    }
});

6. 判断文件是否存在

var fs=require('fs');
fs.exists('r_a.txt',function(bExits){
    console.log(bExits);
});

7. 文件内部追加内容

var fs=require('fs');
fs.appendFile('r_a.txt','abc',function(err){
    console.log(err);
});

其实就是api的用法:
更加详细的信息,请看:http://nodejs.org/api/fs.html

 

文章最后给大家一个js中随机字符串的技巧:

  • Math.random().toString(36).substring(2) //toString(36):将随机数转换成36进制的数,即0-9 a-z


版权声明

本文仅代表作者观点,不代表本站立场。
本文系作者授权发表,未经许可,不得转载。

评论