Está en la página 1de 2

Huallpa Quentasi Juan Carlos 1

Archivos en java

File (archivos en java)


File file1=new File("d:\\archivos/numeros.txt");
File file2=new File("d:\\archivos/numeros2.txt");

Los datos en nmeros.txt ya deben de estar en l, para poder ver los resultados, es decir
primero debers llenar los datos en nmeros.txt

El programa que se realizara obtendr los valores de par e impar segn los nmeros dados
en nmeros.txt.

Huallpa Quentasi Juan Carlos 2


Archivos en java
El codigo que realiza esta accin es el siguiente.
import java.io.*;
public class archivos2 {
public static void main(String arg[]){
File file1=new File("d:\\archivos/numeros.txt");//de donde se leera
File file2=new File("d:\\archivos/numeros2.txt");//donde se colocara el
resultado
FileReader fr;
BufferedReader br;
FileWriter fw;
PrintWriter pw;
try{
fr=new FileReader(file1);//lectura en numeros.txt
br=new BufferedReader(fr);//salida de lectura de numero.txt
atravez de buffer.
fw=new FileWriter(file2);//escritura en numeros2.txt
pw=new PrintWriter(fw);//entrada de escritura en numeros2.txt
String linea="";//buffer en java
int numero=0;
while(linea!=null){
linea=br.readLine();//obteccion de una linea de numeros.txt
numero=toNumber(linea);//convercion de la linea en numero
if(linea!=null){
if(numero!=-1){
if(numero%2==0){
pw.println("par");//escritura en
numeros2.txt si el numero es par
}
else{
pw.println("impar");//escritura en
numeros2.txt si el numero es impar
}
}
else{
//escritura en numeros2.txt si linea no es
un numero
pw.println("caracteres no reconocidos");
}
}
}
fr.close();//cierre del file1
fw.close();//cierre del file2
}catch (IOException e) {
e.printStackTrace();
}
}
//metodo que convierte un string en un numero;
//si encuentra un valor no numerico en el string, la funcion retorna -1
static int toNumber(String x){
if(x!=null){
int num=0,i;
for(i=0;i<x.length();i++){
if(x.charAt(i)>='0'&&x.charAt(i)<='9'){
num=(num*10)+(int)(x.charAt(i)-48);
}
else{
return -1;
}
}
return num;
}
return -1;
}
}

Esa sera la ayuda que les puedo dar acerca de file en java, adems de que su tarea es muy
similar solo tenen que cambiar algunas cositas ok.
El siguiente sbado 16 de junio no pasaremos clases por razones personales, as que ustedes
dirn cuando podemos recuperar esa clase.