Node.js用於服務器端腳本。讀寫文件是在任何應用程序中執行的兩個最重要的操作。 Node.js提供了廣泛的內置函數來執行讀寫操作。 fs軟件包包含文件操作所需的函數。 fs軟件包的read()方法使用文件描述符讀取文件。為了讀取沒有文件描述符的文件,可以使用fs軟件包的readFile()方法。
用法
fs.read(fd, buffer, offset, length, position, callback)
參數:
- fd:fs.open()方法返回的文件描述符。
 - buffer:存儲從文件中獲取的數據。
 - offset:緩衝區中的偏移量,指示從何處開始寫入。
 - length:一個整數,指定要讀取的字節數。
 - position:一個整數,指定從文件中開始讀取的位置。如果position為null,則從當前文件位置讀取數據。
 - callback:回調函數接受三個參數,即。 (err,bytesRead,buffer)。
 
說明:fs.open()方法打開文件並返回文件描述符。文件描述符是內核存儲在文件描述符表中的數字或索引,用於唯一標識計算機操作係統中的打開文件。 fs.read()方法使用文件描述符讀取文件並將其存儲在緩衝區中。緩衝區的內容作為輸出打印出來。 fs.close()方法用於關閉文件。
範例1:
var fs = require("fs"); 
var buffer = new Buffer.alloc(1024); 
  
console.log("Open existing file"); 
fs.open('gfg.txt', 'r+', function (err, fd) { 
    if (err) { 
        return console.error(err); 
    } 
  
    console.log("Reading the file"); 
  
    fs.read(fd, buffer, 0, buffer.length, 
        0, function (err, bytes) { 
            if (err) { 
                console.log(err); 
            } 
  
            if (bytes > 0) { 
                console.log(buffer. 
                    slice(0, bytes).toString()); 
            } 
            console.log(bytes + " bytes read"); 
  
            // Close the opened file. 
            fs.close(fd, function (err) { 
                if (err) { 
                    console.log(err); 
                } 
  
                console.log("File closed successfully"); 
            }); 
        }); 
});輸出:
Open existing file Reading the file 0 bytes read File closed successfully
範例2:動態輸入文件名/路徑。
// Module required to accept user 
// input from console 
var readline = require('readline-sync'); 
var fs = require("fs"); 
  
var path = readline.question("Enter file path:"); 
console.log("Entered path:" + path); 
  
console.log("File Content "); 
  
fs.stat(path, function (error, stats) { 
  
    // 'r' specifies read mode 
    fs.open(path, "r", function (error, fd) { 
        var buffer = new Buffer.alloc(stats.size); 
        fs.read(fd, buffer, 0, buffer.length, 
            null, function (error, bytesRead, buffer) { 
                var data = buffer.toString("utf8"); 
                console.log(data); 
            }); 
    }); 
});輸出:
C:\Users\User\Desktop>node read3.js Enter file path:new.txt Entered path:new.txt File Content Hello World.. Welcome to GeeksForGeeks.. This is a Node.js program
相關用法
- Node.js console.timeLog()用法及代碼示例
 - Node.js GM contrast()用法及代碼示例
 - Node.js GM transparent()用法及代碼示例
 - Node.js GM flop()用法及代碼示例
 - Node.js GM resize()用法及代碼示例
 - Node.js GM border()用法及代碼示例
 - Node.js GM bordercolor()用法及代碼示例
 - Node.js GM flip()用法及代碼示例
 - Node.js GM median()用法及代碼示例
 - Node.js GM orderedDither()用法及代碼示例
 - Node.js GM paint()用法及代碼示例
 - Node.js GM roll()用法及代碼示例
 - Node.js GM raise()用法及代碼示例
 - Node.js GM quality()用法及代碼示例
 - Node.js GM negative()用法及代碼示例
 
注:本文由純淨天空篩選整理自Shreyasi_Chakraborty大神的英文原創作品 Node.js | fs.read() Method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。
