发布于 2015-08-18 23:56:24 | 387 次阅读 | 评论: 0 | 来源: PHPERZ

file system模块

虽然与node.js中文件系统模块名称和调用方法( require("fs"))一样,但不得不说,phantom的文件系统模块总体是比较简单的,API不多但够用,API也不同于node.js的异步 回调风格,而是采用stream+同步的风格,浓浓的C++风味。在使用的时间请一定要注意与node.js的文件系统模块做区分。

  1. fs.open(path, mode/opts) File
    open() 方法接受两个参数,第一个参数是要打开的文件路径,第二个参数后面还会见到,这里统一说明。如果是字符串,则代表文件打开的模式,可选的有 'r'、 'w'、 'a/+'、 'b'(read时仅支持 'b');如果是一个对象,则表示配置项,一共有两个配置项,分别是 mode和 charset, mode就是刚刚提到的打开模式, charset表示文件的编码类型。参阅下面的示例:
    var fs = require("fs");
    var file = fs.open("main.js", 'r');
    console.log(file.read());
    file.close();
    file = fs.open("main.js", 'a');
    file.write("123");
    file.close();
    setTimeout(function () {
        phantom.exit(0)
    }, 2000);
    对打开的文件,我们可以进行读写操作(具体使用与打开模式有关)。如果对一个文件执行了open,请别忘了在文件使用完成后,再对其执行close。
  2. fs.read(path, mode/opts) String
    fs.read()方法对文件读取做了封装,不必关心文件的打开关闭,返回值为文件内容。
  3. fs.write(path, content, mode/opts)
    fs.write()方法对文件写入做了封装,不必关心文件的打开关闭。
  4. 其他API:
    • fs.size(path) Number:获取文件大小
    • fs.copy(source, destination):复制文件
    • fs.copyTree(source, destination):复制目录树
    • fs.move(source, destination):移动文件
    • fs.moveTree(source, destination):移动目录树
    • fs.remove(file):删除文件
    • fs.removeTree(path):删除目录
    • fs.join(partialPath[]) String:组合路径
    • fs.split(path) String[]:切割路径
    • fs.exist(path) Boolean:文件或目录是否存在
    • fs.isFile(path) Boolean:指定路径是否是文件
    • fs.isDirectory(path) Boolean:指定路径是否是目录
    • fs.list(path) String[]:获取指定目录下的文件/目录名称列表
最新网友评论  共有(0)条评论 发布评论 返回顶部

Copyright © 2007-2017 PHPERZ.COM All Rights Reserved   冀ICP备14009818号  版权声明  广告服务