2016年5月13日 星期五

Node.js – Path

Tool:Visual Studio 2015 Enterprise Update 1、Node.js Tools 1.1.1 for Visual Studio 2015
OS:Windows 10
Node.js v6.1.0、JavaScript

此為使用Visual Studio 2015開發Node.js程式的筆記。 本文介紹常用檔案與路徑的屬性與變數與path Module。


常用檔案與路徑的屬性與變數

若要找尋目前node.exe所在的路徑可以使用process.execPath

console.log("node.exe所在的完整路徑 :" + process.execPath);

//node.exe所在的完整路徑 :C:\Program Files (x86)\nodejs\node.exe

使用内建的變數取得目前的檔案名稱(__filename)與目前的資料夾名稱(__dirname) :

console.log("node.exe所在的完整路徑 :" + process.execPath);
//node.exe所在的完整路徑 :C:\Program Files (x86)\nodejs\node.exe

console.log("目前的檔案名稱 : " + __filename);
//目前的檔案名稱 : C:\temp\NodejsConsoleApp2\NodejsConsoleApp2\app.js

console.log("目前的資料夾名稱 : " + __dirname);
//目前的資料夾名稱 : C:\temp\NodejsConsoleApp2\NodejsConsoleApp2

console.log("目前工作中的資料夾名稱 : " + process.cwd())
//目前工作中的資料夾名稱 : C:\temp\NodejsConsoleApp2\NodejsConsoleApp2

try {
    //變更資料夾
    process.chdir("..");
    console.log("目前工作中的資料夾名稱 : " + process.cwd())
    //目前工作中的資料夾名稱 : C:\temp\NodejsConsoleApp2

} catch (exception) {
    console.error("變更資料夾錯誤:  " + exception.message);
}

使用path module 組路徑

path module是核心模組,可操作檔案路徑。

//組路徑
var path = require("path");
var directories = ["a", "b", "c","d"];

//使用join方法傳入陣列組路徑
var directory = directories.join(path.sep);

console.log(path.sep);  //separator會根據OS而有所不同
console.log(directory); //a\b\c\d

//組檔名
var fileName = directory + path.sep + "demo.txt";
console.log(fileName); //a\b\c\d\demo.txt

//取副檔名
var extension = path.extname(fileName);
console.log(extension); //.txt

//取檔名,含副檔名
var baseName = path.basename(fileName);
console.log(baseName); //demo.txt

//取檔名,不含副檔名
var file = path.basename(fileName, extension);
console.log(file); //demo

沒有留言:

總瀏覽量