日本免费高清视频-国产福利视频导航-黄色在线播放国产-天天操天天操天天操天天操|www.shdianci.com

學無先后,達者為師

網站首頁 編程語言 正文

使用node讀取文件和寫入文件

作者:13少啊 更新時間: 2022-05-10 編程語言

在使用node之前,首先你得安裝node,關于怎么安裝可在官網自行進行安裝。

一.怎么檢查自己的node安裝成功了

在終端輸入node- v 進行檢查。

可以看出我安裝的node版本是14.17.0的版本。

二.什么是node?

當我們在瀏覽器寫js的時候, 會操作到DOM和BOM這些都是內置的api,這些都是在瀏覽器上運行,現在常用的性能最好的解析引擎是V8引擎,這些都屬于前端的環境。

總的來說:

解析:V8引擎
運行環境:瀏覽器
api:瀏覽器內置的api

node也屬于一種運行行的環境,里面也有自己內置的api,它也是用V8引擎來解析的, 不過使用node是在終端進行運行的,

總結來說:

解析:V8引擎
運行環境:終端
api:node內置的api

瀏覽器大家都懂,那么就有人問了終端是什么?

?(1): 我對終端的理解就是和電腦交流的一種方式。?

?(2):?打開終端的方式?:cmd powershell

?(3):查找文件的案例

?

三.node的一些快捷方式

1. ? 上箭頭:上次輸入的命令

2.tab:補全路徑

3.cls:清除整個窗口的內容

4.cd:切換目錄

5.esc:清除當前行的命令

更多的命令可自行查找

四.簡單的讀取文件

(1)讀取的方式

node 文件的路徑

(2)案例

如果是cmd終端

點擊后:

?兩種終端都可以,個人覺得第一種方便些。

?

五.通過fs來讀取文件和寫入文件

(1)導入fs這個模塊

const fs=require('fs')

(2)調用

fs.readFile('./duqu.txt','utf8',function(err,datastr){
  console.log('讀取成功后的'+err);
  console.log('讀取成功后的'+datastr);
})

?(3)參數的介紹

1.要讀取的文件路徑

2.編碼格式

3.讀取完之后的結果

(4)運行之后的結果

?可以看出讀取成功之后:

? ? err----------------null

? ?datastr------------返回的是文件里面的數據

讀取失敗之后兩個參數的結果:

?

?可以看出讀取失敗之后?

err-----------報錯的信息

datastr------underfined

(5)寫入文件

需求:

1.將duqu這個里面的內容=替換成:??

2.換行進行顯示

代碼:

const fs=require('fs')
fs.readFile('./duqu.txt','utf8',function(err,datastr){
  // console.log('讀取成功后的'+err);
  // console.log('讀取成功后的'+datastr);
  // 如果為空的話說明讀取成功 
  if (err) {
    // null轉換為布爾值是false
    return  console.log('文件讀取失敗');
  }
 

  
//  1.先把成績的數據,按照空格進行分割
const arrOld=datastr.split(',')
const arrNew=[]
arrOld.forEach(item=>{
  arrNew.push(item.replace('=',':'))
})
 const newStr=arrNew.join('\r\n')
 console.log(newStr);
 
//  5.調用fs.writeFile()方法,把處理完畢后的成績
fs.writeFile('.//xieru.txt',newStr,function(err){
  // 讀取失敗 err的值也是為空  null轉換為布爾值還是false
  if (err) {
    return console.log(err+'寫入失敗的');
  }
  console.log('成績寫入成功');
})
})



成功之后的結果:

?

六.補充if(變量)的含義

在JavaScrpit 可以直接將變量放在if后面的括號里,如:

?if?(a){??

//...??

}??

以下情況會被認為返回false:

1."" 空的字符串?

2.為0的數字

3.為null的對象

4.為underfined的對象

5.布爾值false

反正為真

七.關于__dirname路徑的問題

說明:

__dirname:表示當前文件所處的目錄

?改造上面的代碼:

const fs=require('fs')
fs.readFile( __dirname+ '/duqu.txt','utf8',function(err,datastr){
  // console.log('讀取成功后的'+err);
  // console.log('讀取成功后的'+datastr);
  // 如果為空的話說明讀取成功 
  if (err) {
    // null轉換為布爾值是false
    return  console.log('文件讀取失敗');
  }
 

  
//  1.先把成績的數據,按照空格進行分割
const arrOld=datastr.split(',')
const arrNew=[]
arrOld.forEach(item=>{
  arrNew.push(item.replace('=',':'))
})
 const newStr=arrNew.join('\r\n')
 console.log(newStr);
 
//  5.調用fs.writeFile()方法,把處理完畢后的成績
fs.writeFile(__dirname+ '/xieru.txt',newStr,function(err){
  // 讀取失敗 err的值也是為空  null轉換為布爾值還是false
  if (err) {
    return console.log(err+'寫入失敗的');
  }
  console.log('成績寫入成功');
})
})


原文鏈接:https://blog.csdn.net/qq_59076775/article/details/123612420

欄目分類
最近更新