SoloCodigo

Programación General => Java => Mensaje iniciado por: kichwz_dark en Miércoles 4 de Octubre de 2006, 16:43

Título: Leer Un Programa .java Linea Por Linea
Publicado por: kichwz_dark en Miércoles 4 de Octubre de 2006, 16:43
hola me gustadia k me dijeran komopodria leer unprograma linea por linea

tneog u programa prolee todo elarchivo de un jalon :P pero kieroleerlo linea opr linea me puden ayudar
este es el programa k tengo
-------

import java.io.*;

public class ArchivoApp2
{
    public static void main (String [] args)
    {
        FileReader entrada = null;
        StringBuffer str = new StringBuffer ();
        try
        {
            entrada = new FileReader ("CuentaCaracteres.java");
            int c;
            while ((c = entrada.read ()) != -1)
            {
                str.append ((char) c);
            }
            System.out.println (str);
            System.out.println ("--------------------------------------");
        }
        catch (IOException ex)
        {
            System.out.println (ex);
        }
        finally
        {
            //cerrar los flujos de datos
            if (entrada != null)
            {
                try
                {
                    entrada.close ();
                }
                catch (IOException ex)
                {
                }
            }
        }
        try
        {
            //espera la pulsacin de una tecla y luego RETORNO
            System.in.read ();
        }
        catch (Exception e)
        {
        }
    }
}
Título: Re: Leer Un Programa .java Linea Por Linea
Publicado por: kike_monarcas en Jueves 5 de Octubre de 2006, 01:43
Hola. Aqui te pongo un ejemplo de cómo lo pude hacer yo y a continuación explico.

La clase BufferedReader de java.io nos permite hacer lecturas desde la ventana de comandos o desde alguna ventana de resultados en un IDE en un programa de Java que así lo requiera. Con esta clase tenemos la posibilidad de realizar lecturas línea desde cualquier lugar, como es el teclado o un archivo. Bastará con especificarle a la clase BufferedReader qué tipo de flujo vamos a manejar, en este caso FileInputStream o flujo de entrada desde un archivo. En el ciclo se presenta todo el contenido del archivo que se desea leer línea por línea. El bloque try-catch nos sirve para ve cuándo se ha alcanzado el fin de archivo, ya que si el ciclo no  está dentro de un bloque que capture una NullPointerException marcará un error a la hora de intentar comparar la variable texto con null en la condición del while. Esta es una forma un tanto "diferente"  de hacer esta lectura, pero espero que te sirva. Se aceptan sugerencias del código. :rolleyes:

Saludos!  :hola:
Título: Re: Leer Un Programa .java Linea Por Linea
Publicado por: lencho en Miércoles 25 de Octubre de 2006, 02:40
Yo te mando una clase donde lo que hace es escribir linea por linea, como tambien leer linea por linea.

espero y te sirva.

Código: Text
  1.  
  2.  
  3. import java.io.*;
  4.  
  5. public class UArchivo{  
  6.   private RandomAccessFile miRAFile;  
  7.  
  8.   public UArchivo(){
  9.  
  10.   }  
  11.  
  12.   public void AbrirArchivo(String path)throws IOException{    
  13.         miRAFile = new RandomAccessFile(path,"rw");        
  14.   }  
  15.  
  16.   public void CerrarArchivo()throws IOException{
  17.     miRAFile.close();
  18.   }  
  19.  
  20.   public void EscribirLinea(String datos)throws IOException{
  21.     String cadena = null;
  22.         miRAFile.seek(miRAFile.length());
  23.         miRAFile.writeBytes(cadena);      
  24.   }    
  25.  
  26.   public String LeerLinea()throws IOException{
  27.     String a=null;
  28.     a = miRAFile.readLine();
  29.     return a;
  30.   }
  31. }
  32.  
  33.  
Título: Re: Leer Un Programa .java Linea Por Linea
Publicado por: lencho en Miércoles 25 de Octubre de 2006, 02:45
entonces tu utilizarias la clase de la siguiente forma.

Código: Text
  1.  
  2.        UArchivo archi = new UArchivo();
  3.     try{
  4.       archi.AbrirArchivo(DirTotal);
  5.       String cad = archi.LeerLinea();
  6.       while (cad != null){        
  7.         cad = archi.LeerLinea();
  8.               System.out.println(cad);
  9.       }
  10.       archi.CerrarArchivo();      
  11.     }catch(IOException ex){
  12.       System.out.println("ESTE ES UN ERROR MIO ");
  13.     }    
  14.  
  15.  

DirTotal es la direccion del archivo que querias leer linea por linea.

BYTE.