0% encontró este documento útil (0 votos)
38 vistas8 páginas

Guia - LAB - 7 - Prog - III - Archivos Texto en JAVA - Sem - 1-2024

La guía de laboratorio se centra en el uso de archivos secuenciales en Java, explicando su definición, estructura y cómo gestionarlos mediante la clase File. Se presentan ejemplos de lectura y escritura de archivos de texto, así como ejercicios prácticos que involucran la creación y manipulación de archivos. El documento proporciona un enfoque práctico para entender la gestión de archivos en programación Java.

Cargado por

Juan David
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
38 vistas8 páginas

Guia - LAB - 7 - Prog - III - Archivos Texto en JAVA - Sem - 1-2024

La guía de laboratorio se centra en el uso de archivos secuenciales en Java, explicando su definición, estructura y cómo gestionarlos mediante la clase File. Se presentan ejemplos de lectura y escritura de archivos de texto, así como ejercicios prácticos que involucran la creación y manipulación de archivos. El documento proporciona un enfoque práctico para entender la gestión de archivos en programación Java.

Cargado por

Juan David
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como DOCX, PDF, TXT o lee en línea desde Scribd
Está en la página 1/ 8

U.T.O. – F.N.I. ING. DE SISTEMAS – ING.

INFORMÁTICA

SIS – 2330 METODOLOGÍA DE LA PROGRAMACIÓN III


GUÍA DE LABORATORIO # 6

TEMA: ARCHIVOS SECUENCIALES EN JAVA.

OBJETIVOS.

 Desarrollo y utilización de Archivos Secuenciales en la solución de problemas.

FUNDAMENTO TEÓRICO.

Archivos, ¿qué son?

Antes de hablar sobre cómo gestionamos los archivos debemos de conocer qué son, para ello tenemos
esta sencilla explicación: un archivo es un conjunto de datos estructurados guardados en algún medio
de almacenamiento que pueden ser utilizados por aplicaciones.

Está compuesto por:

 Nombre: Identificación del archivo.


 Extensión: Indica el tipo de archivo.

Un archivo o fichero informático es un conjunto de bits que son almacenados en un dispositivo. Un


archivo es identificado por un nombre y la descripción de la carpeta o directorio que lo contiene. A los
archivos informáticos se les llama así porque son los equivalentes digitales de los archivos escritos en
expedientes, tarjetas, libretas, papel o microfichas del entorno de oficina tradicional.

Clase File

La clase File además de proporcionarnos información sobre los archivos y directorios nos permite
crearlos y eliminarlos.

Para ello esta clase nos permite crearlos utilizando:

File nombreFile = new File("/carpeta/archivo");

y borrarlos con:

nombreFile.delete();

Además de los anteriores disponemos de estos métodos para gestionarlos:

Método Descripción
createNewFile() Crea (si se puede) el fichero indicado
delete() Borra el fichero indicado
mkdirs() Crea el directorio indicado

Página 1
Método Descripción
getName() Devuelve un String con el nombre del fichero
getPath() Devuelve un String con la ruta relativa
getAbsolutePath() Devuelve un String con la ruta absoluta
getParent() Devuelve un String con el directorio que tiene por encima
Renombra un fichero al nombre del fichero pasado como parámetro (se puede mover el fichero resultante
renameTo()
a otra ruta, en caso de ser la misma se sobrescribirá)
exists() Boolean que nos indicará si el fichero existe
canWrite() Boolean que nos indicará si el fichero puede ser escrito
canRead() Boolean que nos indicará si el fichero puede ser leído
isFile() Boolean que indica si el fichero es un archivo
listFiles() Método que devuelve un array con los ficheros contenidos en el directorio indicado
isDirectory() Boolean que indica si el fichero es un directorio
lastModified() Devuelve la última hora de modificación del archivo
length() Devuelve la longitud del archivo

Lectura de un fichero de texto en java


import java.io.*;

class LeeFichero {
public static void main(String [] arg) {
File archivo = null;
FileReader fr = null;
BufferedReader br = null;

try {
// Apertura del fichero y creacion de BufferedReader para poder
// hacer una lectura comoda (disponer del metodo readLine()).
archivo = new File ("C:/prueba.txt");
fr = new FileReader (archivo);
br = new BufferedReader(fr);

// Lectura del fichero


String linea;
while((linea=br.readLine())!=null)
System.out.println(linea);
}
catch(Exception e){
e.printStackTrace();
}finally{
// En el finally cerramos el fichero, para asegurarnos
// que se cierra tanto si todo va bien como si salta
// una excepcion.
try{
if( null != fr ){
fr.close();
}
}catch (Exception e2){
e2.printStackTrace();
}
}
}
}

Escritura de un fichero de texto en java

Página 2
import java.io.*;

public class EscribeFichero


{
public static void main(String[] args)
{
FileWriter fichero = null;
PrintWriter pw = null;
try
{
fichero = new FileWriter("c:/prueba.txt");
pw = new PrintWriter(fichero);

for (int i = 0; i < 10; i++)


pw.println("Linea " + i);

} catch (Exception e) {
e.printStackTrace();
} finally {
try {
// Nuevamente aprovechamos el finally para
// asegurarnos que se cierra el fichero.
if (null != fichero)
fichero.close();
} catch (Exception e2) {
e2.printStackTrace();
}
}
}
}

//Siqueremos añadir al final de un fichero ya existente, simplemente debemos poner un flag a true como
segundo //parámetro del constructor de FileWriter.

// FileWriter fichero = new FileWriter("c:/prueba.txt",'''true''');

Ejercicio resuelto de archivo texto

Realiza un programa en JAVA en el que muestres un menu que te permita 3 opciones:


1. Creacion de un fichero de texto (con el nombre que tu quieras) en el que indiques en
cada linea:
Tu Nombre.
Tus Apellidos.
Tu Ciudad de Nacimiento.
2. Mostrar por pantalla el contenido del fichero de texto creado.
3. Salir del Programa.

Página 3
import java.io.*;
import java.util.*;

public class Ejercicio01 {

public static void mostrarMenu() {


Scanner teclado = new Scanner(System.in);
int opcion;

do {

System.out.println("1-.Crear Fichero");
System.out.println("2-.Mostrar Fichero");
System.out.println("3-.Salir");

opcion = teclado.nextInt();
switch (opcion) {
case 1: {
crearFichero();
break;
}
case 2: {
mostrarFichero();
break;
}
case 3: {
System.out.println("Gracias por usar el programa");
}
default: {
System.out.println("Opcion incorrecta");
}

}
} while (opcion != 3);
}

public static void crearFichero() {


FileWriter fw = null;
try {
fw = new FileWriter("archivo.txt");
PrintWriter pw = new PrintWriter(fw);
escribirFichero(pw);
} catch (Exception e) {
System.out.println(e.getMessage());
} finally {
try {
if (fw != null) {
fw.close();
}
} catch (Exception e) {
System.out.println(e.getMessage());
}
}

Página 4
public static void escribirFichero(PrintWriter pw) throws Exception {
Scanner teclado = new Scanner(System.in);
String opcion;
System.out.println("Introduce tu nombre");
opcion = teclado.nextLine();
pw.println(opcion);
System.out.println("Introduce tus apellidos");
opcion = teclado.nextLine();
pw.println(opcion);
System.out.println("Introduce tu lugar de nacimiento");
opcion = teclado.nextLine();
pw.println(opcion);
}
public static void leerFichero(BufferedReader br) throws Exception {
String linea;
linea = br.readLine();
while (linea != null) {

System.out.println(linea);
linea = br.readLine();

}
}

public static void mostrarFichero() {


FileReader fr = null;
try {
File fichero = new File("archivo.txt");
fr = new FileReader(fichero);
BufferedReader br = new BufferedReader(fr);
leerFichero(br);
} catch (Exception e) {
System.out.println(e.getMessage());
} finally {
try {
if (fr != null) {
fr.close();
}
} catch (Exception e) {
System.out.println(e.getMessage());
}
}

public static void main(String[] args) {


mostrarMenu();
}

Ejercicio resuelto de archivo texto


Crea una aplicación donde pidamos el nombre de un fichero por teclado y un texto que queramos escribir en el fichero.
Después de crear el fichero con la información introducida, deberás mostrar por pantalla e texto del fichero pero variando

Página 5
entre mayúsculas y minúsculas.
• Por ejemplo, si escribo:
“Bienvenidos a Plasencia” deberá devolver
“bIENVENIDOS A pLASENCIA”.

import java.io.*;
import java.util.*;
public class Ejercicio04Tema08 {

static String nombreFichero;


static String testo;

public static String solicitarFichero() {


Scanner teclado = new Scanner(System.in);

System.out.println("Introduce el nombre del fichero");


nombreFichero = teclado.nextLine();
return nombreFichero;
}
public static String devolverFichero() {
return nombreFichero;

}
public static String solicitarTesto() {
Scanner teclado = new Scanner(System.in);

System.out.println("Introduce el Testo del fichero");


testo = teclado.nextLine();
return testo;
}

public static String devolverTesto() {


return testo;

public static void crearFichero() {


FileWriter fw = null;
try {
fw = new FileWriter(solicitarFichero() + ".txt");
PrintWriter pw = new PrintWriter(fw);
escribirFichero(pw);

} catch (Exception e) {
System.out.println(e.getMessage());
}finally{
try {
if (fw != null) {
fw.close();
}

} catch (Exception e) {
System.out.println(e.getMessage());
}

}
}
public static void escribirFichero(PrintWriter pw) throws Exception{
pw.println(solicitarTesto());

Página 6
}

public static void mostrarFichero() {


FileReader fr = null;
try {
File fichero = new File(devolverFichero() + ".txt");
fr = new FileReader(fichero);
BufferedReader br = new BufferedReader(fr);
leerFichero(br);
} catch (Exception e) {
System.out.println(e.getMessage());
} finally {
try {
if (fr != null) {
fr.close();
}
} catch (Exception e) {
System.out.println(e.getMessage());
}
}
}

public static void leerFichero(BufferedReader br)throws Exception{

}
public static void invertirCadena(String cadena, char [] cadenaMinusculas, char
[] cadenaMaysculas){

char [] cadenaFinal;
cadenaFinal= cadena.toCharArray();

char [] cadenaChar;
cadenaChar = cadena.toCharArray();

for (int i = 0; i < cadenaChar.length; i++) {

for (int j = 0; j < cadenaMinusculas.length; j++) {

if (cadenaChar[i] == cadenaMinusculas[j]) {

cadenaFinal[i] = cadenaMaysculas[j];

if (cadenaChar[i] == cadenaMaysculas[j]) {

cadenaFinal[i] = cadenaMinusculas[j];

}
System.out.println(cadenaFinal);
}

public static void main(String[] args) {

Página 7
crearFichero();
String cadena = new String(devolverTesto());

char[] cadenaMinusculas = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i',
'j', 'q', 'l', 'm', 'n', 'ñ', 'o', 'p', 'k', 'r', 's', 't', 'u', 'v', 'w', 'x',
'y', 'z'};
char[] cadenaMaysculas = {'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'I', 'J',
'Q', 'L', 'M', 'N', 'Ñ', 'O', 'P', 'K', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y',
'Z'};

invertirCadena(cadena, cadenaMinusculas, cadenaMaysculas);


}

Página 8

También podría gustarte