Manual de Java

 
 
 

Mapa Web

 
borde   borde
Portada arrow Ficheros

 

Ficheros Imprimir E-mail

Todos los lenguajes de programación tienen alguna forma de interactuar con los sistemas de ficheros locales; Java no es una excepción.

Cuando se desarrollan applets para utilizar en red, hay que tener en cuenta que la entrada/salida directa a fichero es una violación de seguridad de acceso. Muchos usuarios configurarán sus navegadores para permitir el acceso al sistema de ficheros, pero otros no.

Por otro lado, si se está desarrollando una aplicación Java para uso interno, probablemente será necesario el acceso directo a ficheros.

Ficheros

Antes de realizar acciones sobre un fichero, necesitamos un poco de información sobre ese fichero. La clase File proporciona muchas utilidades relacionadas con ficheros y con la obtención de información básica sobre esos ficheros.

Creación de un objeto File

Para crear un objeto File nuevo, se puede utilizar cualquiera de los tres constructores siguientes:

    File miFichero;
miFichero = new File( "/etc/kk" );

o

    miFichero = new File( "/etc","kk" );

o

    File miDirectorio = new File( "/etc" );
miFichero = new File( miDirectorio,"kk" );

El constructor utilizado depende a menudo de otros objetos File necesarios para el acceso. Por ejemplo, si sólo se utiliza un fichero en la aplicación, el primer constructor es el mejor. Si en cambio, se utilizan muchos ficheros desde un mismo directorio, el segundo o tercer constructor serán más cómodos. Y si el directorio o el fichero es una variable, el segundo constructor será el más útil.

Comprobaciones y Utilidades

Una vez creado un objeto File, se puede utilizar uno de los siguientes métodos para reunir información sobre el fichero:

  • Nombres de fichero
        String getName()
String getPath()
String getAbsolutePath()
String getParent()
boolean renameTo( File nuevoNombre )
  • Comprobaciones
        boolean exists()
boolean canWrite()
boolean canRead()
boolean isFile()
boolean isDirectory()
boolean isAbsolute()
  • Información general del fichero
        long lastModified()
long length()
  • Utilidades de directorio
        boolean mkdir()
String[] list()

Vamos a desarrollar una pequeña aplicación que muestra información sobre los ficheros pasados como argumentos en la línea de comandos, InfoFichero.java :

import java.io.*;
class InfoFichero {
public static void main( String args[] ) throws IOException {
if( args.length > 0 )
{
for( int i=0; i < args.length; i++ )
{
File f = new File( args[i] );
System.out.println( "Nombre: "+f.getName() );
System.out.println( "Camino: "+f.getPath() );
if( f.exists() )
{
System.out.print( "Fichero existente " );
System.out.print( (f.canRead() ?
" y se puede Leer" : "" ) );
System.out.print( (f.canWrite() ?
" y se puese Escribir" : "" ) );
System.out.println( "." );
System.out.println( "La longitud del fichero son "+
f.length()+" bytes" );
}
else
System.out.println( "El fichero no existe." );
}
}
else
System.out.println( "Debe indicar un fichero." );
}
}

 

Capítulo anterior:
Entrada/Salida Estándar

Capítulo siguiente:
Streams de Entrada



 

 
Portada
Capítulos del Manual de Java
Introducción a Java
Origen de Java
Características de Java
Instalación del JSDK
Conceptos Basicos
Programación
Control de Flujo
Clases
Variables y Métodos de Instancia
Alcance de Objetos y Reciclado de Memoria
Herencia
Control de Acceso
Variables y Métodos Estáticos
this y super
Clases Abstractas
Interfaces
Métodos Nativos
Paquetes
Referencias
Referencias y Arrays
Referencias y Listas
Una mínima aplicación
Compilación y Ejecución de Hola Mundo
Un Applet Básico
La Clase Math
La Clase Character
La Clase Float
La Clase Double
La Clase Integer
La Clase Long
La Clase Boolean
La Clase String
La Clase StringBuffer
Uso de Conversiones
Manejo de Excepciones
Generar Excepciones
Excepciones Predefinidas
Crear Excepciones
Capturar Excepciones
Propagación de Excepciones
Entrada/Salida Estándar
Ficheros
Streams de Entrada
Streams de Salida
Ficheros de Acceso Aleatorio
Practicar en línea
Lista de prácticas en línea
FAQ
Preguntas frecuentes
Códigos Java
Lista de Códigos Java
Foros
Foros Java
Otros Manuales
Manuales de otros lenguajes
 
   
 
 
Alojamiento web en Hostalia