Skip to content

Commit

Permalink
Merge pull request #12 from Vinceto/developer
Browse files Browse the repository at this point in the history
M4 Arreglos y Archivos D17
  • Loading branch information
Andressep authored May 30, 2024
2 parents b71cbb5 + 37d1a25 commit b215440
Show file tree
Hide file tree
Showing 3 changed files with 201 additions and 0 deletions.
46 changes: 46 additions & 0 deletions Vinceto/src/D17/FileOperations.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
package D17;
import java.io.File;
import java.io.IOException;

public class FileOperations {
public static void main(String[] args) {
// Crear un directorio
crearDirectorio("directorio");

// Crear un fichero dentro del directorio
crearFichero("fichero.txt", "directorio");
}
// Método para crear un directorio
public static void crearDirectorio(String nombre) {
File directorio = new File("src/" + nombre);
if (!directorio.exists()) {
if (directorio.mkdir()) {
System.out.println("Directorio " + nombre + " creado exitosamente.");
} else {
System.out.println("Error al crear el directorio " + nombre + ".");
}
} else {
System.out.println("El directorio " + nombre + " ya existe.");
}
}

// Método para crear un fichero dentro de un directorio
public static void crearFichero(String nombreFichero, String nombreDirectorio) {
crearDirectorio(nombreDirectorio); // Crear el directorio si no existe

File fichero = new File("src/" + nombreDirectorio + "/" + nombreFichero);
if (!fichero.exists()) {
try {
if (fichero.createNewFile()) {
System.out.println("Fichero " + nombreFichero + " creado exitosamente en el directorio " + nombreDirectorio + ".");
} else {
System.out.println("Error al crear el fichero " + nombreFichero + " en el directorio " + nombreDirectorio + ".");
}
} catch (IOException e) {
System.out.println("Ocurrió un error al crear el fichero " + nombreFichero + ": " + e.getMessage());
}
} else {
System.out.println("El fichero " + nombreFichero + " ya existe en el directorio " + nombreDirectorio + ".");
}
}
}
51 changes: 51 additions & 0 deletions Vinceto/src/D17/FileWriterExample.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,51 @@
package D17;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;

public class FileWriterExample {
public static void main(String[] args) {
crearFile();
}
public static void crearFile() {
// Crear el directorio
File directorio = new File("src/miDirectorio");
if (!directorio.exists()) {
if (directorio.mkdirs()) {
System.out.println("Directorio 'miDirectorio' creado exitosamente.");
} else {
System.out.println("Error al crear el directorio 'miDirectorio'.");
return;
}
} else {
System.out.println("El directorio 'miDirectorio' ya existe.");
}

// Crear el fichero
File archivo = new File("src/miDirectorio/fichero.txt");
try {
if (archivo.createNewFile()) {
System.out.println("Archivo 'fichero.txt' creado exitosamente.");
} else {
System.out.println("El archivo 'fichero.txt' ya existe.");
}

// Crear el FileWriter y BufferedWriter
FileWriter fileWriter = new FileWriter(archivo);
BufferedWriter bufferedWriter = new BufferedWriter(fileWriter);

// Escribir en el archivo
bufferedWriter.write("texto 1");
bufferedWriter.newLine();
bufferedWriter.write("texto 2");
bufferedWriter.newLine();

// Cerrar el BufferedWriter
bufferedWriter.close();
System.out.println("Texto escrito en 'fichero.txt' exitosamente.");
} catch (IOException e) {
System.out.println("Ocurrió un error al crear el archivo o escribir en él: " + e.getMessage());
}
}
}
104 changes: 104 additions & 0 deletions Vinceto/src/D18/FileHandler.java
Original file line number Diff line number Diff line change
@@ -0,0 +1,104 @@
package D18;

import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

public class FileHandler {
public static void main(String[] args) {
// Crear el archivo y directorio, y escribir en el archivo
crearArchivo("directorioEjm", "fichero.txt");

// Buscar texto en el archivo y contar las ocurrencias
buscarTexto("directorioEjm/fichero.txt", "Juan");
}
// Método para crear el archivo y directorio, y escribir en el archivo
public static void crearArchivo(String directorio, String fichero) {
// Validar que el nombre del fichero termine con ".txt"
if (!fichero.endsWith(".txt")) {
System.out.println("El nombre del fichero debe terminar con \".txt\"");
return;
}

// Crear el directorio si no existe
File dir = new File("src/" + directorio);
if (!dir.exists()) {
if (dir.mkdirs()) {
System.out.println("Directorio '" + directorio + "' creado exitosamente.");
} else {
System.out.println("Error al crear el directorio.");
return;
}
} else {
System.out.println("El directorio '" + directorio + "' ya existe.");
}

// Crear el archivo y escribir en él
File archivo = new File("src/" + directorio + "/" + fichero);
ArrayList<String> lista = new ArrayList<>();
lista.add("Perro");
lista.add("Gato");
lista.add("Juan");
lista.add("Daniel");
lista.add("Juan");
lista.add("Gato");
lista.add("Perro");
lista.add("Camila");
lista.add("Daniel");
lista.add("Camila");

try {
if (archivo.createNewFile()) {
System.out.println("Archivo '" + fichero + "' creado exitosamente.");
} else {
System.out.println("El archivo '" + fichero + "' ya existe.");
}

FileWriter fileWriter = new FileWriter(archivo);
BufferedWriter bufferedWriter = new BufferedWriter(fileWriter);

// Usar Iterator para recorrer la lista y escribir en el archivo
Iterator<String> iterator = lista.iterator();
while (iterator.hasNext()) {
bufferedWriter.write(iterator.next());
bufferedWriter.newLine();
}

bufferedWriter.close();
System.out.println("Texto escrito en '" + fichero + "' exitosamente.");
} catch (IOException e) {
System.out.println("Ocurrió un error al crear el archivo o escribir en él: " + e.getMessage());
}
}

// Método para buscar texto en el archivo y contar las ocurrencias
public static void buscarTexto(String nombreFichero, String texto) {
File archivo = new File("src/" + nombreFichero);

if (!archivo.exists()) {
System.out.println("El fichero ingresado no existe.");
return;
}

try {
List<String> lineas = Files.readAllLines(Paths.get("src/" + nombreFichero));
int contador = 0;

for (String linea : lineas) {
if (linea.contains(texto)) {
contador++;
}
}

System.out.println("Cantidad de repeticiones del texto -> " + contador);
} catch (IOException e) {
System.out.println("Ocurrió un error al leer el archivo: " + e.getMessage());
}
}
}

0 comments on commit b215440

Please sign in to comment.