Este ejemplo muestra cómo eliminar una línea de un archivo.
El removeLineFromFile método toma dos parámetros, el primer parámetro es el archivo a quitar de y el segundo parámetro es el contenido de la línea de quitar.
Un tempfile se crea y por escrito a, excepto por el contenido que coincide con el segundo parámetro.
De esta manera los archivos de gran tamaño puede ser manejado sin exigir tanta cantidad de memoria interna.
El archivo original se elimina y el archivo temporario se cambia el nombre al nombre del archivo original.
Por ejemplo, el archivo test.txt se encuentra en el directorio actual y contiene tres líneas, y vamos a eliminar la segunda línea "bbbbb".
El removeLineFromFile método toma dos parámetros, el primer parámetro es el archivo a quitar de y el segundo parámetro es el contenido de la línea de quitar.
Un tempfile se crea y por escrito a, excepto por el contenido que coincide con el segundo parámetro.
De esta manera los archivos de gran tamaño puede ser manejado sin exigir tanta cantidad de memoria interna.
El archivo original se elimina y el archivo temporario se cambia el nombre al nombre del archivo original.
Por ejemplo, el archivo test.txt se encuentra en el directorio actual y contiene tres líneas, y vamos a eliminar la segunda línea "bbbbb".
aaaaa
bbbbb
ccccc
bbbbb
ccccc
import java.io.BufferedReader;
import java.io.FileReader;
import java.io.File;
import java.io.FileWriter;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.PrintWriter;
public class FileUtil {
public void removeLineFromFile(String file, String lineToRemove) {
try {
File inFile = new File(file);
if (!inFile.isFile()) {
System.out.println("Parameter is not an existing file");
return;
}
//Construct the new file that will later be renamed to the original filename.
File tempFile = new File(inFile.getAbsolutePath() + ".tmp");
BufferedReader br = new BufferedReader(new FileReader(file));
PrintWriter pw = new PrintWriter(new FileWriter(tempFile));
String line = null;
//Read from the original file and write to the new
//unless content matches data to be removed.
while ((line = br.readLine()) != null) {
if (!line.trim().equals(lineToRemove)) {
pw.println(line);
pw.flush();
}
}
pw.close();
br.close();
//Delete the original file
if (!inFile.delete()) {
System.out.println("Could not delete file");
return;
}
//Rename the new file to the filename the original file had.
if (!tempFile.renameTo(inFile))
System.out.println("Could not rename file");
}
catch (FileNotFoundException ex) {
ex.printStackTrace();
}
catch (IOException ex) {
ex.printStackTrace();
}
}
public static void main(String[] args) {
FileUtil util = new FileUtil();
util.removeLineFromFile("test.txt", "bbbbb");
}
}
El archivo test.txt ahora se ve así:
import java.io.FileReader;
import java.io.File;
import java.io.FileWriter;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.PrintWriter;
public class FileUtil {
public void removeLineFromFile(String file, String lineToRemove) {
try {
File inFile = new File(file);
if (!inFile.isFile()) {
System.out.println("Parameter is not an existing file");
return;
}
//Construct the new file that will later be renamed to the original filename.
File tempFile = new File(inFile.getAbsolutePath() + ".tmp");
BufferedReader br = new BufferedReader(new FileReader(file));
PrintWriter pw = new PrintWriter(new FileWriter(tempFile));
String line = null;
//Read from the original file and write to the new
//unless content matches data to be removed.
while ((line = br.readLine()) != null) {
if (!line.trim().equals(lineToRemove)) {
pw.println(line);
pw.flush();
}
}
pw.close();
br.close();
//Delete the original file
if (!inFile.delete()) {
System.out.println("Could not delete file");
return;
}
//Rename the new file to the filename the original file had.
if (!tempFile.renameTo(inFile))
System.out.println("Could not rename file");
}
catch (FileNotFoundException ex) {
ex.printStackTrace();
}
catch (IOException ex) {
ex.printStackTrace();
}
}
public static void main(String[] args) {
FileUtil util = new FileUtil();
util.removeLineFromFile("test.txt", "bbbbb");
}
}
El archivo test.txt ahora se ve así:
aaaaa
ccccc
ccccc
Muy buen trabajo!
ResponderEliminarDisculpa amigo, y si quiero ingresar la linea "ddddd" en donde se encontraba la linea "bbbbb" como lo haria?
ResponderEliminarpublic class VoiceMailServices
ResponderEliminar{
String delimitador = "";
String ruta = "/etc/asterisk/voicemail_extra.conf";
String contenido = Util.readFile(ruta);
Extension objExtension = new Extension();
public void principal(String accion, String nombre, String callerId, String mailbox)
{
switch (Integer.parseInt(accion))
{
case 1:
insertarVoiceMail(nombre, callerId, mailbox);
break;
case 2:
actualizarVoiceMail(nombre, callerId, mailbox);
break;
case 3:
eliminarVoiceMail(nombre, callerId, mailbox);
break;
default:
break;
}
}
public void parametros(String nombre, String callerId, String mailbox)
{
if (nombre != null && nombre != "" && nombre != "null")
objExtension.setNombre(nombre);
else
objExtension.setNombre("");
if (callerId != null && callerId != "" && callerId != "null")
objExtension.setCallerId(callerId);
else
objExtension.setCallerId("");
if (mailbox != null && mailbox != "" && mailbox != "null")
objExtension.setMailbox(mailbox);
else
objExtension.setMailbox("");
}
public void insertarVoiceMail(String nombre, String callerId, String mailbox)
{
parametros(nombre, callerId, mailbox );
String delimitador = "";
String[] splitContenido = contenido.split(delimitador);
String column = "";
column = "<" + objExtension.getNombre() + ">" + "=>";
column += "<" + objExtension.getNombre() + ">";
column += "<" + objExtension.getCallerId() + ">";
column += "<" + objExtension.getMailbox() + ">";
column += System.getProperty("line.separator");// \r\n
if (contenido != null && contenido != "")
{
column = contenido + column;
}
Util.writeFile(column, ruta);
System.out.println("Registro Ingresado" + splitContenido);
}
public void actualizarVoiceMail(String nombre, String callerId, String mailbox)
{
parametros(nombre, callerId, mailbox);
List lineas;
String lineaArchivoNuevo = "";
String nuevoescrito = "";
try
{
lineas = Arrays.asList(contenido.split("\r\n"));
for (int i = 0; i < lineas.size(); i++)
{
String lineaActualizar = lineas.get(i).toString();
if (lineaActualizar.contains(nombre))
{
nuevoescrito = "<" + objExtension.getNombre() + ">" + "=>";
nuevoescrito += "<" + objExtension.getNombre() + ">";
nuevoescrito += "<" + objExtension.getCallerId() + ">";
nuevoescrito += "<" + objExtension.getMailbox() + ">";
lineas.set(i, nuevoescrito);
break;
}
}
for (int i = 0; i < lineas.size(); i++)
{
lineaArchivoNuevo += lineas.get(i).toString() + "\r\n";
}
}
catch (Exception e)
{
}
System.out.println("Actualizado");
Util.writeFile(lineaArchivoNuevo, ruta);
}
public void eliminarVoiceMail(String nombre, String callerId, String mailbox)
{
parametros(nombre, callerId, mailbox);
List lineas;
String nuevoescrito = "";
String lineass;
FileReader fr;
BufferedReader br;
try
{
fr = new FileReader(ruta);
br = new BufferedReader(fr);
lineas = new ArrayList();
lineas.clear();
while ((lineass = br.readLine()) != null)
{
lineas.add(lineass);
}
for (int i = 0; i < lineas.size(); i++)
{
if (lineas.get(i).toString().contains(nombre))
{
lineas.remove(i);
}
}
for (int i = 0; i < lineas.size(); i++)
{
nuevoescrito+=lineas.get(i).toString()+"\r\n";
}
System.out.println("Eliminado");
Util.writeFile(nuevoescrito, ruta);
}
catch (Exception e)
{
}
para insertar actualizar y eliminar un registro de un archivo txt funciona al 100%
ResponderEliminarpublic class VoiceMailServices
ResponderEliminar{
String delimitador = "";
String ruta = "/etc/asterisk/voicemail_extra.conf";
String contenido = Util.readFile(ruta);
Extension objExtension = new Extension();
public void principal(String accion, String nombre, String callerId, String mailbox)
{
switch (Integer.parseInt(accion))
{
case 1:
insertarVoiceMail(nombre, callerId, mailbox);
break;
case 2:
actualizarVoiceMail(nombre, callerId, mailbox);
break;
case 3:
eliminarVoiceMail(nombre, callerId, mailbox);
break;
default:
break;
}
}
public void parametros(String nombre, String callerId, String mailbox)
{
if (nombre != null && nombre != "" && nombre != "null")
objExtension.setNombre(nombre);
else
objExtension.setNombre("");
if (callerId != null && callerId != "" && callerId != "null")
objExtension.setCallerId(callerId);
else
objExtension.setCallerId("");
if (mailbox != null && mailbox != "" && mailbox != "null")
objExtension.setMailbox(mailbox);
else
objExtension.setMailbox("");
}
public void insertarVoiceMail(String nombre, String callerId, String mailbox)
{
parametros(nombre, callerId, mailbox );
String delimitador = "";
String[] splitContenido = contenido.split(delimitador);
String column = "";
column = "<" + objExtension.getNombre() + ">" + "=>";
column += "<" + objExtension.getNombre() + ">";
column += "<" + objExtension.getCallerId() + ">";
column += "<" + objExtension.getMailbox() + ">";
column += System.getProperty("line.separator");// \r\n
if (contenido != null && contenido != "")
{
column = contenido + column;
}
Util.writeFile(column, ruta);
System.out.println("Registro Ingresado" + splitContenido);
}
public void actualizarVoiceMail(String nombre, String callerId, String mailbox)
{
parametros(nombre, callerId, mailbox);
List lineas;
String lineaArchivoNuevo = "";
String nuevoescrito = "";
try
{
lineas = Arrays.asList(contenido.split("\r\n"));
for (int i = 0; i < lineas.size(); i++)
{
String lineaActualizar = lineas.get(i).toString();
if (lineaActualizar.contains(nombre))
{
nuevoescrito = "<" + objExtension.getNombre() + ">" + "=>";
nuevoescrito += "<" + objExtension.getNombre() + ">";
nuevoescrito += "<" + objExtension.getCallerId() + ">";
nuevoescrito += "<" + objExtension.getMailbox() + ">";
lineas.set(i, nuevoescrito);
break;
}
}
for (int i = 0; i < lineas.size(); i++)
{
lineaArchivoNuevo += lineas.get(i).toString() + "\r\n";
}
}
catch (Exception e)
{
}
System.out.println("Actualizado");
Util.writeFile(lineaArchivoNuevo, ruta);
}
public void eliminarVoiceMail(String nombre, String callerId, String mailbox)
{
parametros(nombre, callerId, mailbox);
List lineas;
String nuevoescrito = "";
String lineass;
FileReader fr;
BufferedReader br;
try
{
fr = new FileReader(ruta);
br = new BufferedReader(fr);
lineas = new ArrayList();
lineas.clear();
while ((lineass = br.readLine()) != null)
{
lineas.add(lineass);
}
for (int i = 0; i < lineas.size(); i++)
{
if (lineas.get(i).toString().contains(nombre))
{
lineas.remove(i);
}
}
for (int i = 0; i < lineas.size(); i++)
{
nuevoescrito+=lineas.get(i).toString()+"\r\n";
}
System.out.println("Eliminado");
Util.writeFile(nuevoescrito, ruta);
}
catch (Exception e)
{
}
Ing. podria subir el programa en rar? e enviarmelo a mi correo santosjeandx@gmail.com gracias de antemano
Eliminarpublic static void writeFile(String contenido, String ruta)
ResponderEliminar{
try
{
File file = new File(ruta);
// if file doesnt exists, then create it
if (!file.exists())
{
file.createNewFile();
}
else
{
file.createNewFile();
}
FileWriter fw = new FileWriter(file.getAbsoluteFile(), false);
BufferedWriter bw = new BufferedWriter(fw);
bw.write(contenido);
bw.close();
}
catch (IOException e)
{
System.out.println(e.getMessage());
}
}
public static String readFile(String ruta)
{
String contenido = "";
BufferedReader br = null;
String line = "";
try
{
br = new BufferedReader(new FileReader(ruta));
while ((line = br.readLine()) != null)
{
contenido += line + System.getProperty("line.separator");
}
}
catch (FileNotFoundException e)
{
e.printStackTrace();
}
catch (IOException e)
{
e.printStackTrace();
}
finally
{
if (br != null)
{
try
{
br.close();
}
catch (IOException e)
{
e.printStackTrace();
}
}
}
return contenido;
}
public static void BorrarFichero(File Ffichero)
{
try
{
/* Si existe el fichero */
if (Ffichero.exists())
{
/* Borra el fichero */
Ffichero.delete();
System.out.println("Fichero Borrado con Exito");
}
}
catch (Exception ex)
{
/* Captura un posible error y le imprime en pantalla */
System.out.println(ex.getMessage());
}
}
public static void eliminarRegistro(String nombreFile, String nombre, String callerId, String mailbox, String secret)
{
List lineas;
String nuevoescrito = "";
try
{
lineas = new ArrayList();
lineas.clear();
lineas = Arrays.asList(readFile(nombreFile));
for (int i = 0; i < lineas.size(); i++)
{
String lineaEliminar = lineas.get(i).toString();
if (lineaEliminar.contains(nombre))
{
System.out.println("SI");
lineas.remove(i);
break;
}
}
for (int i = 0; i < lineas.size(); i++)
{
nuevoescrito += lineas.get(i).toString() + "\r\n";
}
writeFile(nuevoescrito, nombreFile);
}
catch (Exception e)
{
// TODO: handle exception
}
}
Ing. podria subir el programa en rar? e enviarmelo a mi correo santosjeandx@gmail.com gracias de antemano
EliminarTop-Tier Iron-Titanium Iron-Titanium Parts - TiogaArt
ResponderEliminarTitanium Trimmer and Steel-Titanium Parts. These parts come in several samsung galaxy watch 3 titanium sizes and shapes and have titanium white octane blueprint a unique shape: In this article, we ford escape titanium 2021 will use our Aluminum Aluminum Steel Tender, titanium piercings Copper titanium security Nickel Tender,
o121c3ffore824 adult sex toys,vibrators,vibrators,dildos,sex doll,dildos,dildos,male sex doll,huge dildos j307v2eogeg206
ResponderEliminar