Eliminar linea de .txt
Publicado por Javier (14 intervenciones) el 30/08/2023 14:51:46
Hola buenos dias, tengo la tarea de eliminar una linea de un .txt es decir por ejemplo:
Se tiene un archivo .txt con estos datos
Linea A
Linea B
Linea C
Luego se ejecuta el codigo con la linea 2 por ejemplo y el txt deberia quedar asi:
Linea A
Linea C
Este es el codigo que intente y no funciona:
const rl = require("readline");
const rll = require("readline").promises;
const fs = require("fs").promises;
class borrarLinea{
puntero;
async crearPuntero(){
this.puntero = await fs.open("./lista.txt","a+");
}
async borrar(){
await this.crearPuntero();//handle al .txt
const rl2 = await rl.createInterface({
input: this.puntero.createReadStream(),
output: this.puntero.createWriteStream()})
let o =0
for await (const line2 of rl2) {
console.log(line2)
//console.log(req.body.borrarUser)
if(line2=="Linea B"){
break;
}
o++;
}//fin ciclo for
var l = await new rll.Readline(this.puntero.createWriteStream())
await l.cursorTo(o)
await l.clearLine(0);
await l.commit();
await this.puntero.close();
await rl2.close();
}
}
var a = new borrarLinea();
a.borrar();
Lo que hace es adicionar una letras al final del archivo quedando el archivo de esta manera:
Linea A
Linea B
Linea C[2G[2K
Alguna ayuda?
Se tiene un archivo .txt con estos datos
Linea A
Linea B
Linea C
Luego se ejecuta el codigo con la linea 2 por ejemplo y el txt deberia quedar asi:
Linea A
Linea C
Este es el codigo que intente y no funciona:
const rl = require("readline");
const rll = require("readline").promises;
const fs = require("fs").promises;
class borrarLinea{
puntero;
async crearPuntero(){
this.puntero = await fs.open("./lista.txt","a+");
}
async borrar(){
await this.crearPuntero();//handle al .txt
const rl2 = await rl.createInterface({
input: this.puntero.createReadStream(),
output: this.puntero.createWriteStream()})
let o =0
for await (const line2 of rl2) {
console.log(line2)
//console.log(req.body.borrarUser)
if(line2=="Linea B"){
break;
}
o++;
}//fin ciclo for
var l = await new rll.Readline(this.puntero.createWriteStream())
await l.cursorTo(o)
await l.clearLine(0);
await l.commit();
await this.puntero.close();
await rl2.close();
}
}
var a = new borrarLinea();
a.borrar();
Lo que hace es adicionar una letras al final del archivo quedando el archivo de esta manera:
Linea A
Linea B
Linea C[2G[2K
Alguna ayuda?
Valora esta pregunta


0