Tabular en jtextarea
Hi:
Mira el problema que tengo es, que como tengo un arreglo de strings, similar a este:
String p[]={"hola","comoestastu","hola2","comoestas2",etc..}
entonces leo un archivo txt, b usco si la linea comienza con algun elemneto del arreglo, si es asi pues va incrementando, y despues k leio todo el archivo, pues muestra en un textarea la variable y el numero de veces k se encontro;
el codigo es:
File archivo = null;
FileReader fr = null;
String linea;
String b;
ArrayList lineas = new ArrayList();
ArrayList lineas2=new ArrayList();
String p[]={ cadenas del string de distintos tamaños};
try {
fr = new FileReader (s2);
BufferedReader br = new BufferedReader(fr);
while((linea=br.readLine())!=null){
lineas.add(linea); } //fin while
for (int j = 0 ; j < lineas.size() ; j++){
linea = (String)lineas.get(j);
StringTokenizer st = new StringTokenizer( linea,"=" );
while(st.hasMoreTokens()){ //inicio while2
b= st.nextToken();
for (int c = 0; c< p.length; c++ )
if(b.startsWith(p[c]))
lineas2.add(b); }//fin while2
} //fin for
for (int k = 0 ; k < lineas2.size() ; k++){
b=(String)lineas2.get(k);
}
areaSalida.append ("\n");
//conteo areaSalida.append ("\n");
areaSalida.append ("ESTADOS"+ "\n");
for (int l = 0 ; l <lineas2.size() ; l++)
{
int h = 1;
for (int m = l + 1 ; m<lineas2.size(); m++)
{
if ( lineas2.get(l)!=null && lineas2.get(m)!=null && lineas2.get(l).equals(lineas2.get(m)) )
{
h++;
lineas2.set(m,null); }}
if ( lineas2.get(l)!= null)
{
areaSalida.append ( lineas2.get(l)+ " " + h +"\n");
}}
}//FIN DEL TRY
catch(IOException e){
System.out.println(e);
}
finally{
try{ //el bloque finally se ejecuta siempre, por eso, si se cierra el fichero
if( fr != null){ //al final del primer try, y ha dado un error antes, pasaría
fr.close(); //al 1er catch y luego saldría, dejándolo abierto. Es conveniente
} //cerrarlo aquí, comprobando que no sea -por un error anterior, como
}catch (IOException e){ // no tener permisos de lectura o que no exista - de valor null.
}
}
El problema es que lo muestra así:
Hola 5
comoestastu 10
hola2 3
Y lo que quiero es que se muestre así
Hola 5
comoestastu 10
¿hola2 3
como puedo hacerle para que se vea si?
Gracias
:)
Mira el problema que tengo es, que como tengo un arreglo de strings, similar a este:
String p[]={"hola","comoestastu","hola2","comoestas2",etc..}
entonces leo un archivo txt, b usco si la linea comienza con algun elemneto del arreglo, si es asi pues va incrementando, y despues k leio todo el archivo, pues muestra en un textarea la variable y el numero de veces k se encontro;
el codigo es:
File archivo = null;
FileReader fr = null;
String linea;
String b;
ArrayList lineas = new ArrayList();
ArrayList lineas2=new ArrayList();
String p[]={ cadenas del string de distintos tamaños};
try {
fr = new FileReader (s2);
BufferedReader br = new BufferedReader(fr);
while((linea=br.readLine())!=null){
lineas.add(linea); } //fin while
for (int j = 0 ; j < lineas.size() ; j++){
linea = (String)lineas.get(j);
StringTokenizer st = new StringTokenizer( linea,"=" );
while(st.hasMoreTokens()){ //inicio while2
b= st.nextToken();
for (int c = 0; c< p.length; c++ )
if(b.startsWith(p[c]))
lineas2.add(b); }//fin while2
} //fin for
for (int k = 0 ; k < lineas2.size() ; k++){
b=(String)lineas2.get(k);
}
areaSalida.append ("\n");
//conteo areaSalida.append ("\n");
areaSalida.append ("ESTADOS"+ "\n");
for (int l = 0 ; l <lineas2.size() ; l++)
{
int h = 1;
for (int m = l + 1 ; m<lineas2.size(); m++)
{
if ( lineas2.get(l)!=null && lineas2.get(m)!=null && lineas2.get(l).equals(lineas2.get(m)) )
{
h++;
lineas2.set(m,null); }}
if ( lineas2.get(l)!= null)
{
areaSalida.append ( lineas2.get(l)+ " " + h +"\n");
}}
}//FIN DEL TRY
catch(IOException e){
System.out.println(e);
}
finally{
try{ //el bloque finally se ejecuta siempre, por eso, si se cierra el fichero
if( fr != null){ //al final del primer try, y ha dado un error antes, pasaría
fr.close(); //al 1er catch y luego saldría, dejándolo abierto. Es conveniente
} //cerrarlo aquí, comprobando que no sea -por un error anterior, como
}catch (IOException e){ // no tener permisos de lectura o que no exista - de valor null.
}
}
El problema es que lo muestra así:
Hola 5
comoestastu 10
hola2 3
Y lo que quiero es que se muestre así
Hola 5
comoestastu 10
¿hola2 3
como puedo hacerle para que se vea si?
Gracias
:)
1 respuesta
Respuesta de krlosnow
1