哈嘍!nodejs的文件系統(tǒng),接觸過node的對node的文件系統(tǒng)肯定不會陌生,這兩天我就在思考一個問題,我是否可以在本地操作我的本地json文件,這樣一個本地的文本數(shù)據(jù)庫就有了,如果是便簽之類,記錄的軟件,我完全可以不用連后臺的數(shù)據(jù)庫,我可以自己操作本地的json文件,自己用node寫后臺,答案是肯定的,下面我們就一起來實現(xiàn)一下吧,對本地json文件的增、刪、改、查
成都網(wǎng)站設(shè)計、網(wǎng)站建設(shè)、外貿(mào)網(wǎng)站建設(shè)服務(wù)團隊是一支充滿著熱情的團隊,執(zhí)著、敏銳、追求更好,是創(chuàng)新互聯(lián)的標(biāo)準(zhǔn)與要求,同時竭誠為客戶提供服務(wù)是我們的理念。創(chuàng)新互聯(lián)把每個網(wǎng)站當(dāng)做一個產(chǎn)品來開發(fā),精雕細琢,追求一名工匠心中的細致,我們更用心!1.增
首先我們先看一下demo的目錄結(jié)構(gòu)
我們看一下person.json的內(nèi)容
沒毛病,接下來就是見證奇跡的時刻了
下面寫nodejs的代碼
var fs = require('fs'); var params = { "id":5, "name":"白眉鷹王" }//在真實的開發(fā)中id肯定是隨機生成的而且不會重復(fù)的,下一篇寫如何生成隨機切不會重復(fù)的隨機數(shù),現(xiàn)在就模擬一下假數(shù)據(jù) //寫入json文件選項 function writeJson(params){ //現(xiàn)將json文件讀出來 fs.readFile('./mock/person.json',function(err,data){ if(err){ return console.error(err); } var person = data.toString();//將二進制的數(shù)據(jù)轉(zhuǎn)換為字符串 person = JSON.parse(person);//將字符串轉(zhuǎn)換為json對象 person.data.push(params);//將傳來的對象push進數(shù)組對象中 person.total = person.data.length;//定義一下總條數(shù),為以后的分頁打基礎(chǔ) console.log(person.data); var str = JSON.stringify(person);//因為nodejs的寫入文件只認識字符串或者二進制數(shù),所以把json對象轉(zhuǎn)換成字符串重新寫入json文件中 fs.writeFile('./mock/person.json',str,function(err){ if(err){ console.error(err); } console.log('----------新增成功-------------'); }) }) } writeJson(params)//執(zhí)行一下;
另外有需要云服務(wù)器可以了解下創(chuàng)新互聯(lián)scvps.cn,海內(nèi)外云服務(wù)器15元起步,三天無理由+7*72小時售后在線,公司持有idc許可證,提供“云服務(wù)器、裸金屬服務(wù)器、高防服務(wù)器、香港服務(wù)器、美國服務(wù)器、虛擬主機、免備案服務(wù)器”等云主機租用服務(wù)以及企業(yè)上云的綜合解決方案,具有“安全穩(wěn)定、簡單易用、服務(wù)可用性高、性價比高”等特點與優(yōu)勢,專為企業(yè)上云打造定制,能夠滿足用戶豐富、多元化的應(yīng)用場景需求。