当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Node.js fs.ftruncate()用法及代码示例


fs.ftruncate()方法用于更改文件的大小,即增加或减小文件的大小。它将路径上的文件长度更改为len个字节。如果len短于文件的当前长度,则文件将被截断为该长度。如果它大于文件长度,则通过附加空字节(x00)来填充它,直到达到len。它类似于truncate()方法,不同之处在于它接受要截断的文件的文件描述符。

用法:

fs.ftruncate(fd, len, callback)

参数:此方法接受上述和以下所述的三个参数:



  • fd:它是一个整数值,表示要截断的文件的文件描述符。
  • len:它是一个整数值,它指定文件的长度,之后将截断文件。它是一个可选参数。默认值为0,这意味着整个文件将被截断。
  • callback:该方法执行时将调用该函数。
    • err:如果方法失败,将抛出此错误。

以下示例说明了Node.js中的fs.ftruncate()方法:

范例1:

// Node.js program to demonstrate the 
// fs.ftruncate() method 
  
// Import the filesystem module 
const fs = require('fs'); 
  
console.log("Contents of file before truncate:") 
console.log(fs.readFileSync('example_file.txt', 'utf8')); 
  
// Get the file descriptor of the file 
const fd = fs.openSync('example_file.txt', 'r+'); 
  
fs.ftruncate(fd, 24, (err) => { 
  if (err) 
    console.log(err) 
  else { 
    console.log("Contents of file after truncate:") 
    console.log(fs.readFileSync('example_file.txt', 'utf8')); 
  } 
});

输出:

Contents of file before truncate:
This is an example file for the ftruncate() method.
Contents of file after truncate:
This is an example file

范例2:

// Node.js program to demonstrate the 
// fs.ftruncate() method 
  
// Import the filesystem module 
const fs = require('fs'); 
  
console.log("Contents of file before truncate:") 
console.log(fs.readFileSync('example_file.txt', 'utf8')); 
  
// get the file descriptor of the file 
const fd = fs.openSync('example_file.txt', 'r+'); 
  
// Truncate the whole file 
fs.ftruncate(fd, (err) => { 
  if (err) 
    console.log(err) 
  else { 
    console.log("Contents of file after truncate:") 
    console.log(fs.readFileSync('example_file.txt', 'utf8')); 
  } 
});

输出:

Contents of file before truncate:
This is an example file for the ftruncate() method.
Contents of file after truncate:

参考: https://nodejs.org/api/fs.html#fs_fs_ftruncate_fd_len_callback




相关用法


注:本文由纯净天空筛选整理自sayantanm19大神的英文原创作品 Node.js | fs.ftruncate() Method。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。