Foros del Web » Programación para mayores de 30 ;) » Java »

[SOLUCIONADO] Bloc de notas a JTextArea

Estas en el tema de Bloc de notas a JTextArea en el foro de Java en Foros del Web. Hola gente, tengo una duda resulta que estaba viendo esa parte de leer .txt y hacer impresion de estos por consola, todo de maravilla, pero ...
  #1 (permalink)  
Antiguo 23/07/2013, 12:16
Avatar de drakk92  
Fecha de Ingreso: julio-2013
Ubicación: cali
Mensajes: 25
Antigüedad: 10 años, 8 meses
Puntos: 1
Pregunta Bloc de notas a JTextArea

Hola gente, tengo una duda resulta que estaba viendo esa parte de leer .txt y hacer impresion de estos por consola, todo de maravilla, pero resulta que quiero pasar el contenido del bloc de notas a un jtextarea que tengo en una clase.

este es mi metodo leerarchivo:

Código:
public void leerarchivo(){
    try {

            File Archivo2 = new File("C:\\Users\\Johan\\Documents\\NetBeansProjects\\BD\\clientes\\src\\Imagenes\\Rutina.txt");
            Scanner s;
            s = new Scanner(Archivo2);

          //  System.out.println(" \nÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ\n");

            BufferedReader lectura;
            try {
                lectura = new BufferedReader(new FileReader(Archivo2));
                String linea;
                int contador = 0;
                while (lectura.ready()) {
                    contador++;
                    linea = lectura.readLine();
                    //System.out.println(" " + contador + ".-   " + linea);
                    t_dr.setText(" " + contador + ".-   " + linea);
                }
             //   System.out.println(" \nÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍÍ\n\n\n");

            } catch (IOException e) {
                e.printStackTrace();
            }
        } catch (FileNotFoundException ex) {
            Logger.getLogger(LeerArchivo1.class.getName()).log(Level.SEVERE, null, ex);
        }
}

El : t_dr, es el textarea que tengo en la clase
//System.out.println(" " + contador + ".- " + linea); <-- esta parte por consola imprime todo el texto que tengo en la txt, completico.

ando probando el constructor desde un boton "en la misma clase"

Código:
private void SalirActionPerformed(java.awt.event.ActionEvent evt) {                                      
       
        leerarchivo();
       // this.dispose();
    }
al presionarlo me lee el txt y carga el contenido en el textarea pero el problema es que: solo la ultima linea la pone en el text area y no todas.

A que se debe esto? que podria modificar?, soy un poco junior en java asi que agradeceria la colaboracion.
  #2 (permalink)  
Antiguo 24/07/2013, 03:21
Avatar de Krain  
Fecha de Ingreso: julio-2013
Ubicación: Valencia
Mensajes: 60
Antigüedad: 10 años, 8 meses
Puntos: 1
Respuesta: Bloc de notas a JTextArea

En este código no veo el lectura.close();
Se te queda el buffer abierto.
El método de lectura bueno, yo lo haría con:
Código Java:
Ver original
  1. public void leerArchivo()
  2. {
  3.     try
  4.     {
  5.         BufferedReader br = new BufferedReader(new FileReader(new File("Archivo2.txt")));
  6.         String linea;
  7.         int contador = 0;
  8.         while((linea = br.readLine())!= null)
  9.         {
  10.              contador ++;
  11.              t_dr.setText(" " + contador + ".-   " + linea);
  12.         }
  13.         br.close();
  14.     }    
  15.     catch(Exception ex)
  16.     {
  17.         ex.printStackTrace();
  18.     }        
  19. }

Última edición por Krain; 24/07/2013 a las 03:31
  #3 (permalink)  
Antiguo 24/07/2013, 12:44
Avatar de drakk92  
Fecha de Ingreso: julio-2013
Ubicación: cali
Mensajes: 25
Antigüedad: 10 años, 8 meses
Puntos: 1
Respuesta: Bloc de notas a JTextArea

si bueno no cerre nunca el lectura, el resto lo habia ya modificado casi igual a como me lo mandaste pero igual lo que me soluciono el problema de que solo me ponia en el textarea la ultima linea fue: t_dr.append(linea + "\n"); pongo la solucion por si alguien alguna vez tenga el problema y venga a buscar en el foro.

Cita:
while (lectura.ready()) {
contador++;
linea = lectura.readLine();
//System.out.println(" " + contador + ".- " + linea);
// t_dr.setText(" " + contador + ".- " + linea);
t_dr.append(linea + "\n");

}

Etiquetas: clase, jtextarea, metodo, netbeans, notas, string
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:05.