PDF de programación - Manejo básico de archivos en Java

Imágen de pdf Manejo básico de archivos en Java

Manejo básico de archivos en Javagráfica de visualizaciones

Publicado el 21 de Noviembre del 2019
1.049 visualizaciones desde el 21 de Noviembre del 2019
529,0 KB
30 paginas
Creado hace 14a (01/01/2010)
Manejo
 básico
 de
 archivos
 en
 Java
 

Curso
 2010/2011
 
Programación
 2
 

 
Hasta
 ahora
 todos
 los
 datos
 que
 creábamos
 en
 nuestros
 programas
 
solamente
 existían
 durante
 la
 ejecución
 de
 los
 mismos.
 Cuando
 
salíamos
 del
 programa,
 todo
 lo
 que
 habíamos
 generado
 se
 perdía.
 
 
A
 veces
 nos
 interesaría
 que
 la
 vida
 de
 los
 datos
 fuera
 más
 allá
 que
 la
 de
 
los
 programas
 que
 los
 generaron.
 Es
 decir,
 que
 al
 salir
 de
 un
 programa
 
los
 datos
 generados
 quedaran
 guardados
 en
 algún
 lugar
 que
 
permitiera
 su
 recuperación
 desde
 el
 mismo
 u
 otros
 programas.
 Por
 
tanto,
 querríamos
 que
 dichos
 datos
 fueran
 persistentes.
 
En
 este
 capítulo
 veremos
 el
 uso
 básico
 de
 archivos
 en
 Java
 para
 
conseguir
 persistencia
 de
 datos.
 Para
 ello
 presentaremos
 conceptos
 
básicos
 sobre
 archivos
 y
 algunas
 de
 las
 clases
 de
 la
 biblioteca
 estándar
 
de
 Java
 para
 su
 creación
 y
 manipulación.
 
 
Además,
 el
 uso
 de
 esas
 bibliotecas
 nos
 obligará
 a
 introducir
 algunos
 
conceptos
 “avanzados”
 de
 programación
 en
 Java:
 las
 excepciones,
 para
 
tratar
 posibles
 errores
 durante
 la
 ejecución
 de
 un
 programa,
 y
 
manipulación
 de
 datos
 a
 bajo
 nivel,
 para
 transformar
 nuestros
 datos
 a
 
vectores
 de
 bytes.
 
Los
 programas
 usan
 variables
 para
 almacenar
 información:
 los
 datos
 
de
 entrada,
 los
 resultados
 calculados
 y
 valores
 intermedios
 generados
 
a
 lo
 largo
 del
 cálculo.
 Toda
 esta
 información
 es
 efímera:
 cuando
 acaba
 
el
 programa,
 todo
 desaparece.
 Pero,
 para
 muchas
 aplicaciones,
 es
 
importante
 poder
 almacenar
 datos
 de
 manera
 permanente.
 
Cuando
 se
 desea
 guardar
 información
 más
 allá
 del
 tiempo
 de
 ejecución
 
de
 un
 programa
 lo
 habitual
 es
 organizar
 esa
 información
 en
 uno
 o
 
varios
 ficheros
 almacenados
 en
 algún
 soporte
 de
 almacenamiento
 
persistente.
 Otras
 posibilidades
 como
 el
 uso
 de
 bases
 de
 datos
 utilizan
 
archivos
 como
 soporte
 para
 el
 almacenamiento
 de
 la
 información.
 
Desde
 el
 punto
 de
 vista
 de
 más
 bajo
 nivel,
 podemos
 definir
 un
 archivo
 
(o
 fichero)
 como:
 
Es
 decir,
 un
 conjunto
 de
 0s
 y
 1s
 que
 reside
 fuera
 de
 la
 memoria
 del
 
ordenador,
 ya
 sea
 en
 el
 disco
 duro,
 un
 pendrive,
 un
 CD,
 entre
 otros.
 
J.M.
 Gimeno
 y
 J.L.
 González
 

Un
 conjunto
 de
 bits
 almacenados
 en
 un
 dispositivo,
 y
 accesible
 
a
 través
 de
 un
 camino
 de
 acceso
 (pathname)
 que
 lo
 identifica.
 


 


 

1. El
 concepto
 de
 archivo
 

Los
 archivos
 desde
 el
 bajo
 nivel
 

1
 

El
 criterio
 del
 contenido
 


 


 

Curso
 2010/2011
 
Programación
 2
 

 
Esa
 versión
 de
 bajo
 nivel,
 si
 bien
 es
 completamente
 cierta,
 desde
 el
 
punto
 de
 vista
 de
 la
 programación
 de
 aplicaciones,
 es
 demasiado
 
 
simple.
 
 
Por
 ello
 definiremos
 varios
 criterios
 para
 distinguir
 diversas
 
subcategorías
 de
 archivos.
 
 Estos
 tipos
 de
 archivos
 se
 diferenciarán
 
desde
 el
 punto
 de
 vista
 de
 la
 programación:
 cada
 uno
 de
 ellos
 
proporcionará
 diferentes
 funcionalidades
 (métodos)
 para
 su
 
manipulación.
 
Sabemos
 que
 es
 diferente
 manipular
 números
 que
 Strings,
 aunque
 en
 
el
 fondo
 ambos
 acaben
 siendo
 bits
 en
 la
 memoria
 del
 ordenador.
 Por
 
eso,
 cuando
 manipulamos
 archivos,
 distinguiremos
 dos
 clases
 de
 
archivos
 dependiendo
 del
 tipo
 de
 datos
 que
 contienen:
 
• Los
 archivos
 de
 caracteres
 (o
 de
 texto)
 
• Los
 archivos
 de
 bytes
 (o
 binarios)
 
Un
 fichero
 de
 texto
 es
 aquél
 formado
 exclusivamente
 por
 caracteres
 y
 
que,
 por
 tanto,
 puede
 crearse
 y
 visualizarse
 usando
 un
 editor.
 Las
 
operaciones
 de
 lectura
 y
 escritura
 trabajarán
 con
 caracteres.
 Por
 
ejemplo,
 los
 ficheros
 con
 código
 java
 son
 ficheros
 de
 texto.
 
En
 cambio
 un
 fichero
 binario
 ya
 no
 está
 formado
 por
 caracteres
 sino
 
que
 los
 bytes
 que
 contiene
 pueden
 representar
 otras
 cosas
 como
 
números,
 imágenes,
 sonido,
 etc.
 
Existen
 dos
 modos
 básicos
 de
 acceso
 a
 la
 información
 contenida
 en
 un
 
archivo:
 
• Secuencial
 
• Acceso
 directo
 
En
 el
 modo
 secuencial
 la
 información
 del
 archivo
 es
 una
 secuencia
 de
 
bytes
 (o
 caracteres)
 de
 manera
 que
 para
 acceder
 al
 byte
 (o
 carácter)
 i-­‐
ésimo
 se
 ha
 de
 haber
 accedido
 anteriormente
 a
 los
 i-­‐1
 anteriores.
 Un
 
ejemplo
 de
 acceso
 secuencial
 lo
 hemos
 visto
 con
 la
 clase
 
StringTokenizer.
 
El
 modo
 de
 acceso
 directo
 nos
 permite
 acceder
 directamente
 a
 la
 
información
 del
 byte
 i-­‐ésimo.
 Un
 ejemplo
 muy
 conocido
 de
 acceso
 
directo
 lo
 tenemos
 con
 los
 vectores
 (arrays).
 
En
 Java,
 los
 distintos
 tipos
 de
 ficheros
 se
 diferencian
 por
 las
 clases
 que
 
usaremos
 para
 representarlos
 y
 manipularlos.
 Como
 las
 clases
 que
 
usaremos
 pertenecen
 a
 la
 biblioteca
 estándar
 del
 lenguaje,
 su
 uso
 es
 
J.M.
 Gimeno
 y
 J.L.
 González
 
2
 

2. Los
 archivos
 desde
 Java
 

El
 criterio
 del
 modo
 de
 acceso
 
 

Tratamiento
 de
 errores:
 las
 excepciones
 

Curso
 2010/2011
 
Programación
 2
 

 
algo
 más
 complejo
 que
 las
 de
 las
 clases
 de
 la
 ACM,
 ya
 que
 su
 diseño
 se
 
ha
 realizado
 pensando
 en
 su
 uso
 industrial.
 
 
Las
 clases
 que
 usaremos
 para
 el
 tratamiento
 de
 ficheros
 están
 ubicadas
 
en
 el
 paquete
 java.io
 por
 lo
 que
 deben
 ser
 importadas.
 
Además,
 el
 código
 que
 trabaja
 con
 archivos
 ha
 de
 considerar
 que
 
muchas
 cosas
 pueden
 ir
 mal
 cuando
 se
 trabaja
 con
 ellos:
 el
 archivo
 
puede
 estar
 corrupto,
 alguien
 ha
 desconectado
 el
 pendrive
 a
 medio
 
ejecutar
 del
 programa,
 es
 un
 disco
 en
 red
 y
 ésta
 ha
 caído,
 o
 no
 tiene
 
más
 espacio
 para
 almacenar
 información,
 etc.
 
 
Es
 por
 ello
 que,
 aunque
 de
 forma
 breve,
 deberemos
 introducir
 el
 
mecanismo
 estándar
 en
 Java
 para
 tratar
 con
 los
 errores
 que
 pueden
 
darse
 en
 nuestro
 programas:
 las
 excepciones.
 
Las
 excepciones
 son
 un
 mecanismo
 que
 permite
 a
 los
 métodos
 indicar
 
que
 algo
 “anómalo”
 ha
 sucedido
 que
 impide
 su
 correcto
 
funcionamiento,
 de
 manera
 que
 quien
 los
 ha
 invocado
 puede
 detectar
 
la
 situación
 errónea.
 Decimos
 en
 este
 caso,
 que
 el
 método
 ha
 lanzado
 
(throw)
 una
 excepción.
 Cuando
 esto
 sucede,
 en
 vez
 de
 seguir
 con
 la
 
ejecución
 normal
 de
 instrucciones,
 se
 busca
 hacia
 atrás
 en
 la
 secuencia
 
de
 llamadas1
 si
 hay
 alguna
 que
 quiera
 atraparla
 (catch).
 Si
 ninguna
 de
 
las
 llamadas
 decide
 atraparla,
 el
 programa
 acaba
 su
 ejecución
 y
 se
 
informa
 al
 usuario
 del
 error
 que
 se
 ha
 producido
 la
 excepción
 y
 que
 
nadie
 ha
 tratado.
 
Muchas
 de
 las
 excepciones
 que
 existen
 en
 Java,
 por
 ejemplo,
 dividir
 por
 
0,
 son
 excepciones
 en
 tiempo
 de
 ejecución
 (runtime
 exceptions)
 y
 
no
 obligan
 a
 que
 el
 programador
 las
 trate
 explícitamente
 (claro
 que
 si
 
el
 código
 no
 las
 trata
 y
 durante
 la
 ejecución
 del
 programa
 se
 producen,
 
el
 programa
 finalizará
 con
 un
 “bonito”
 mensaje
 de
 error).
 
En
 Java,
 existe
 otro
 tipo
 de
 excepciones,
 las
 denominadas
 excepciones
 
comprobadas
 (checked
 exceptions),
 que
 obligan
 al
 programador
 que
 
dentro
 del
 código
 de
 un
 método
 invoca
 una
 instrucción
 que
 puede
 
lanzarla
 a
 
 
• o
 bien
 atrapar
 dicha
 excepción
 (colocando
 dicha
 instrucción
 en
 
un
 bloque
 try-­‐catch)
 
• o
 bien,
 declarar
 en
 la
 cabecera
 del
 método
 que
 dicho
 método
 
puede
 lanzar
 esa
 excepción
 (usando
 una
 declaración
 throws).
 

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
 El
  • Links de descarga
http://lwp-l.com/pdf16944

Comentarios de: Manejo básico de archivos en Java (0)


No hay comentarios
 

Comentar...

Nombre
Correo (no se visualiza en la web)
Valoración
Comentarios...
CerrarCerrar
CerrarCerrar
Cerrar

Tienes que ser un usuario registrado para poder insertar imágenes, archivos y/o videos.

Puedes registrarte o validarte desde aquí.

Codigo
Negrita
Subrayado
Tachado
Cursiva
Insertar enlace
Imagen externa
Emoticon
Tabular
Centrar
Titulo
Linea
Disminuir
Aumentar
Vista preliminar
sonreir
dientes
lengua
guiño
enfadado
confundido
llorar
avergonzado
sorprendido
triste
sol
estrella
jarra
camara
taza de cafe
email
beso
bombilla
amor
mal
bien
Es necesario revisar y aceptar las políticas de privacidad