Mostrando entradas con la etiqueta Scanner. Mostrar todas las entradas
Mostrando entradas con la etiqueta Scanner. Mostrar todas las entradas

sábado, 24 de diciembre de 2011

Lenguaje Java - Leccion 10

Archivos en Java

Con java también podemos procesar archivos de todo tipo, leerlos y escribir en ellos, en la lección de hoy veremos como procesar los archivos ".txt", si los archivos planos ( de texto ), para ello usaremos las librerías.

java.io.*;
java.util.Scanner;

En el manejo de archivos se usan las estructuras Try-Catch, nos indican que el código dentro del Try se debe intentar hacer y si ocurre un problema, hacer la parte del Catch.
try{
// hacer algo  y si pasa algo pasar al catch

}catch(Exception obj){ // pongan siempre Exception para cualquier error que ocurra
  // en caso de error en el try hacer lo que esta aqui
}

Escribiendo archivos:

 public void creaData(){
         //Crear un archivo
        try{
             File f=new File("Archivo1.txt");
            FileOutputStream fo=new FileOutputStream(f,true);
// ese true es para ver si se apila o se
//crea un archivo nuevo
            PrintWriter escribe=new PrintWriter(fo); // el objeto llamado escribe es el que usaremos
       
            escribe.println("1 2 3 4 5 6");
// escribimos los valores 1,2,3,4,5,6 separados por un espacio
//de linea y luego damos un salto de linea (println).
            escribe.println("Terminado"); // escribimos terminado
          for(int i=0;i<10;i++){
              escribe.println(""+(i+1));
// escribimos los numeros del 1 al 10
          }
        escribe.close();
//cerrar el archivo es necesario porque si no cierras no guarda
        //también puede usarse el método escribe.flush(); para guardar pero seguir editando
        }catch(Exception a){
            System.out.println("Error!");
        }
    }


*Los archivos se crean en la carpeta del proyecto del netbeans, en el caso que pongamos la ruta del archivo, lo encontraremos en esa ruta, ejm: File f=new File("C:\Archivo1.txt"); en ese caso el archivo estará en C:\, pero si lo dejamos asi File f=new File("Archivo1.txt"); el archivo respectivo estará en la carpeta del proyecto del netbeans.

Leyendo data de un archivo: Hablamos de token cuando nos referimos a 1 palabra separada por un espacio en blanco o un salto de linea, por ejemplo en " 2 3 4 5 asd 4234" hay 6 tokens.

public void leeArchivo(){
    
    //Lectura de archivos
         try{
             File f=new File("Archivo1.txt");
// leemos el archivo creado anteriormente
             Scanner sca=new Scanner(f);
// declaramos el objeto Scanner para leer
             String aux;
             while(sca.hasNext()){
// mientras tenga 1 token el archivo
                 aux=sca.next();
// leemos el primer token
                 System.out.println(aux);
// lo imprimimos en consola
             }
            
            
         }catch(Exception as){
             System.out.println("Error");
         }
        
    }

viernes, 23 de diciembre de 2011

Lenguaje Java - Leccion 8

Trabajando con Consola

En java trabajamos con la consola con 2 métodos:

  • El popular System.out.println("---")
  • El Scanner para ingreso de Datos ( aunque hay varios para ingreso de datos, yo uso Scanner)
Salida de Datos por Consola:

Bien si queremos imprimir o mostrar por consola Java algunos datos, solo tenemos que invocar la siguiente linea de codigo:

System.out.println("Hola Amigos"); // es igual que el printf de C y el cout<< de C++

También se puede imprimir sin salto de linea: System.out.print("Hola Amigos");

Si queremos imprimir una variable entera concatenada con una cadena usamos el +:

String e="Mi edad es: ";
int edad=21;


System.out.println(e+edad);


Ingreso de Datos por Consola:

Usaremos la librería java.util.Scanner, esta librería trabaja igual que el scanf() de C y el cin>> de C++.


import java.util.Scanner;
public class Test{


public static void main(String args[]){

 Scanner lector=new Scanner(System.in);


String dato=lector.next(); // leemos 1 palabra por consola

int datoentero=lector.nextInt();  // leemos 1 número entero por consola

double datodecimal=lector.nextDouble(); // leemos 1 número decimal por consola

String linea=lector.nextLine();  // leemos 1 linea de palabras escrita en la consola


}


}

De esta manera controlamos los flujos de entrada y salida en Java, usando el System.out.println() y el Scanner.