El método fsPromises.truncate() se define en el módulo Sistema de archivos de Node.js. El módulo Sistema de archivos se utiliza básicamente para interactuar con el disco duro de la computadora del usuario.
El método truncate() se utiliza para modificar el contenido interno del archivo en bytes ‘len’. Si len es más corto que la longitud actual del archivo, el archivo se trunca a esa longitud de len y si es mayor que la longitud del archivo, se rellena agregando bytes nulos (x00) hasta alcanzar len.
Sintaxis:
fs.promises.truncate(path, len)
Parámetros: Este método acepta dos parámetros como se mencionó anteriormente y se describe a continuación:
- ruta: es una string, un búfer o una URL que especifica la ruta al archivo de destino.
- len: es un valor numérico que especifica la longitud del archivo después del cual se trunca el archivo. Es un parámetro opcional, el valor predeterminado es 0, es decir, si no se proporciona el parámetro len, se truncará todo el archivo.
Valor de retorno: este método devuelve una promesa que se resolverá sin argumentos en caso de éxito o se rechazará con un objeto de error si algo salió mal (por ejemplo, la ruta dada es una ruta al directorio o la ruta dada no existe).
Ejemplo 1:
// Node.js program to demonstrate the // fsPromises.truncate() Method // Importing File System module const fs = require('fs'); // Truncate operation fs.promises.truncate('./test.txt') // If file is successfully truncated .then(() => { console.log('File contents are deleted!'); }) // If any error occurs .catch(err => { console.log(`Error Occurs, Error code -> ${err.code}, Error NO -> ${err.errno}`) });
Implementando la misma funcionalidad usando async-await.
// Node.js program to demonstrate the // fsPromises.truncate() Method // Importing File System module const fs = require('fs'); const truncate = async (path) => { // Truncate operation await fs.promises.truncate(path); console.log('File contents are deleted!'); } truncate('./test.txt') // If any error occurs .catch(err => { console.log(`Error Occurs, Error code -> ${err.code}, Error NO -> ${err.errno}`) });
Contenido del archivo antes de ejecutar el programa:
Contenido del archivo después de ejecutar el programa:
Producción:
File contents are deleted!
Ejemplo 2: Truncar parcialmente
// Node.js program to demonstrate the // fsPromises.truncate() Method // Importing File System module const fs = require('fs') // Fetching contents before truncate fs.promises.readFile('./test.txt') .then(buff => { const oldContents = buff.toString() console.log(`\nContents before truncate : \n${oldContents}`) // Truncate operation return fs.promises.truncate('./test.txt', 12) }) // If file is successfully truncated .then(() => { console.log('\nTruncate done!\n') // Fetching contents after truncate return fs.promises.readFile('./test.txt') }) .then(buff => { const newContents = buff.toString() console.log(`Contents after truncate : \n${newContents}`) }) // If any error occurs .catch(err => { console.log(`Error Occurs, Error code -> ${err.code}, Error NO -> ${err.errno}`) });
Implementando la misma funcionalidad usando async-await
// Node.js program to demonstrate the // fsPromises.truncate() Method // Importing File System module const fs = require('fs') // Function to read file contents const readFileContents = async (path) => { const buff = await fs.promises.readFile(path) return buff.toString() } // Function to truncate const truncate = async (path, len) => { // Fetching contents before truncate const oldContents = await readFileContents('./test.txt') console.log(`\nContents before truncate : \n${oldContents}`) // Truncate operation const buff = await fs.promises.truncate(path, len) console.log('\nTruncate done!\n') // Fetching contents before truncate const newContents = await readFileContents('./test.txt') console.log(`Contents after truncate : \n${newContents}`) } truncate('./test.txt', 12) // If any error occurs .catch(err => { console.log(`Error Occurs, Error code -> ${err.code}, Error NO -> ${err.errno}`) })
Contenido del archivo antes de ejecutar el programa:
Contenido del archivo después de ejecutar el programa:
Producción:
Referencia: https://nodejs.org/dist/latest-v14.x/docs/api/fs.html#fs_fspromises_truncate_path_len
Publicación traducida automáticamente
Artículo escrito por hunter__js y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA