nodejs中內(nèi)置模塊fs,path常見的用法說明
readFile
readFileSync 同步讀取數(shù)據(jù)
var fs=require('fs');
fs.readFileSync('./a.txt');
readFile 異步讀取數(shù)據(jù)
var fs=require('fs'); //引入文件
fs.readFile('./a.txt',function(err,data){
//當(dāng)異步讀取完文件數(shù)據(jù)后執(zhí)行該回調(diào)函數(shù)中代碼
//err 錯(cuò)誤對象;
//data 數(shù)據(jù)
if(err){
console.log('讀取文件出錯(cuò)');
return;
}
//正常打印數(shù)據(jù)
console.log(data.toString());
})
console.log('111');
寫文件writeFile
writeFileSync 同步讀取數(shù)據(jù)
var fs=require('fs'); //引入內(nèi)置模塊
fs.writeFileSync("b.txt","我是寫入的內(nèi)容");
writeFile 異步讀取數(shù)據(jù)
fs.writeFile('c.txt','我是寫入的內(nèi)容',function(err){
if(err){
console.log('寫文件出錯(cuò)');
return;
}
console.log('寫文件出錯(cuò)');
})
console.log('111');
練習(xí)
var fs=require('fs'); //引入文件模塊
fs.mkdirSync('./web1804'); //同步創(chuàng)建目錄;
fs.writeFileSync('./web1804/node1.txt','這是我的學(xué)習(xí)筆記');
var data=fs.readFileSync('./web1804/node1.txt');
console.log(data.toString());
fs.mkdir('./web1804_1',function(err){
if(err){
console.log('創(chuàng)建目錄失敗');
return;
}
console.log('創(chuàng)建目錄成功');
})
var isExist=fs.existsSync('./web1804');
拓展
1、文件刪除;
2、創(chuàng)建多級目錄 d:/web1804/javascript/css
3、刪除文件目錄
4、復(fù)制文件
創(chuàng)建目錄fs.mkdir
檢測是文件還是目錄 fs.stat
寫入追加文件 fs.oppendFile
讀取目錄fs.readdir
重命名 rename
刪除目錄 rmdir
刪除文件 unlink
path
var path=require('path);
var psth1="http://www.baidu.com.cn/img.jpg ";
var index=psth1.indexOf('/');
console.log(index);
var lastindex=psth1.lastIndexOf('/'); //從后向前獲取指定字符在字符串中的序號
var sub=path1.substring(lastindex+1); //substring(index) 返回指定序號index后的子字符串
console.log('sub:+'+sub);
path.basename返回路徑的最后一部分
var psth1="http://www.baidu.com.cn/img.jpg "; var imgName=path.basename(path1); //返回路徑的最后一部分,個(gè)人認(rèn)為用這個(gè)來獲取文件名或者URL中帶的參數(shù) console.log(imgName);
path.jion
var paths=path.jion('web1804','html','css');
console.log(paths); //web1804\html\css
path.parse返回路徑字符串的對象
var path1='http://www.baidu.com.cn/img.jpg'; var url=path.parse(path1); console.log(url);
console.log(_dirname); 當(dāng)前絕對路徑
拓展
substring(); 返回指定序號index后的子字符串;
lastIdexOf 從后向前獲取指定字符中在字符串中序號;
補(bǔ)充知識:NodeJs內(nèi)置的url、path、http模塊的應(yīng)用
1.url模塊:
//引入url模塊
var url = require("url");
//假設(shè)一個(gè)網(wǎng)址
var ;
//將網(wǎng)址解析成一個(gè)Url對象
var obj = url.parse(href,true);
console.log(obj);
//獲取Url對象中的query對象
var query = obj.query;
console.log("queryName:"+query.name);
console.log("queryAge:"+query.age);
2.path模塊:
//引入path模塊
var p = require("path");
//自定義絕對路徑
var path = "C:\\jhh\\text\\js";
//去掉最后一層
console.log(p.dirname(path)); //C:\jhh\text
//取最后一層
console.log(p.basename(path)); //js
3.http模塊:
//引入http模塊
var http = require("http");
//創(chuàng)建web服務(wù)器
var server = http.createServer();
//監(jiān)聽請求
server.on("request",function (request, response) {
console.log("收到用戶請求:"+request.method);
var url = request.url;
var msg = "";
if(url == "/"){
msg = "這是主頁"
}else if(url == "/login"){
msg = "這是登錄頁"
}else {
msg = "404";
}
//解決相應(yīng)亂碼
response.setHeader("content-type","text/html;charset=utf-8");
//相應(yīng)數(shù)據(jù)
response.write(msg);
//結(jié)束相應(yīng)
response.end();
});
//啟動(dòng)服務(wù)器
server.listen(8081,function () {
console.log("服務(wù)器啟動(dòng)")
});
以上這篇nodejs中內(nèi)置模塊fs,path常見的用法說明就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
使用?Node.js和Express搭建服務(wù)器的過程步驟詳解
Node.js?是一個(gè)開源、跨平臺的?JavaScript?運(yùn)行時(shí)環(huán)境,這篇文章主要介紹了如何使用?Node.js和Express搭建服務(wù)器,需要的朋友可以參考下2023-09-09
node.js 使用ejs模板引擎時(shí)后綴換成.html
本文給大家分享一個(gè)nodejs的小技巧,將ejs模板引擎的模板后綴改成.html的使用方法,非常的簡單實(shí)用,這里推薦給大家。2015-04-04
Nodejs讀取本地json文件,輸出json數(shù)據(jù)接口方式
這篇文章主要介紹了Nodejs讀取本地json文件,輸出json數(shù)據(jù)接口方式,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-10-10

