26/03/2006, 14:57
|
| | | Fecha de Ingreso: enero-2006 Ubicación: ¿Atlantida, Hesperides, Islas afortunadas?
Mensajes: 2.231
Antigüedad: 19 años Puntos: 19 | |
Un ejemplo http://club.idecnet.com/~ccastano/femepa/161105.htm
Código:
import java.io.*;
class FileStreamsTest {
public static void main(String[] args) {
try {
File inputFile = new File("original.txt");
File outputFile = new File("outagain.txt");
//Creamos entradas y salidas por cónsola
FileInputStream fis = new FileInputStream(inputFile);
FileOutputStream fos = new FileOutputStream(outputFile);
int c;
//Mientras el valor del método read() del objeto fis sea != -1 --> ejecuta metodo
//write del objeto fos
// traduciendo: mientras no termine de leer el fichero
// inputfile, copialo ( y si no existe lo crea y si existe lo sobreescribe)
// en el fichero outputfile
while ((c = fis.read()) != -1) {
//lee byte a byte de fis y lo vuelca en fos
fos.write(c);
}
// en realidad trabaja entre la ram(FileInputStream y FileOutputStream) y el HD
// (inputFile , outputFile)
fis.close();
fos.close();//importante , no dejarse abierto canales
} catch (FileNotFoundException e) {
//la excepción provendria de no encontrar original.txt
// originada en la linea FileInputStream fis = new FileInputStream(inputFile);
// java exige recoger la excepcion al usar este canal ( try{..} catch{..} )
// el fichero de salida no genera excepción , ya que se va a crear o sobreescribir
System.err.println("FileStreamsTest: " + e);
} catch (IOException e) {
// excepción más genérica de entrada / salida
System.err.println("FileStreamsTest: " + e);
}
}
}
|