Download Practica 4 MANEJO DE ARCHIVOS II
Document related concepts
no text concepts found
Transcript
PRACTICA 4. 4. MANEJO DE ARCHIVOS II OBJETIVO Realizar un programa que, de un archivo e texto, cuente cuantas palabras tiene y cuantas se repiten. MARCO TEORICO En este programa lo que deseamos realizar es que mandemos a llamar el archivo de texto en el mismo programa guardado en la misma capeta donde se encuentra el programa para que con este podamos contar, las palabras, cuantas se repiten. En este programa ocuparemos las paqueterías importjava.util.ArrayList; Se Implementa todas las operaciones de lista opcional, y permite que todos los elementos, incluyendo null. Además de la aplicación de la Lista interfaz, esta clase proporciona métodos para manipular el tamaño de la matriz que se utiliza internamente para almacenar la lista. (Esta clase es aproximadamente equivalente a Vector, Excepto que no está sincronizado.) Cada ArrayListejemplo, tiene un capacidad. La capacidad es el tamaño de la matriz utilizada para almacenar los elementos en la lista. Siempre es al menos tan grande como el tamaño de la lista. Como elementos se añaden a un ArrayList, su capacidad crece de forma automática. Los detalles de la política de crecimiento no se especifican más allá del hecho de que la adición de un elemento constante de costo del tiempo se ha amortizado. Igual ocupamos el try por los diferentes errores o exepciones que se puedan efectuar durant el programa o producir. DESARROLLO Y ANALISIS En el programa archivos se mostrara el número de veces que se repite la palabra según el archivo que se mandó a llamar en el programa y va a decir cuales son palíndromo y cuáles no. CODIGO importjava.util.ArrayList; import java.util.*; import java.io.*; import javax.swing.*; classContadorToken { public static void main(String [] arg) { File archivo = null; FileReaderfr = null; String linea; String b; ArrayListlineas = new ArrayList(); ArrayList lineas2=new ArrayList(); String p[]={ "",}; try { archivo = new File ("etext.txt"); fr = new FileReader (archivo); BufferedReaderbr = new BufferedReader(fr); while((linea=br.readLine())!=null){ lineas.add(linea); } for (int j = 0 ; j <lineas.size() ; j++) { linea = (String)lineas.get(j); StringTokenizerst = 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);} //conteo de palabra System.out.println ("CONTADOR DE TOKEN"+ "\n\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) { System.out.println( lineas2.get(l)+ " " + h +" "+ "[VECES]"); } } System.out.println("\n\n"); System.out.println("BUSCADOR DE PALINDROMO\n\n"); for (int j = 0 ; j <lineas.size() ; j++) { linea = (String)lineas.get(j); StringTokenizerst = new StringTokenizer(linea,", " ); while(st.hasMoreTokens()) { //inicio while2 b= st.nextToken(); int des = b.length()-1; intinc = 0; booleanbError = false; while ((inc<des) && (!bError)){ if (b.charAt(inc)==b.charAt(des)){ inc++; des--; } else { bError = true; } } if (!bError) System.out.println(b + " es un [Palindromo]"); else System.out.println(b + " no es [Palindromo]"); }//fin while2 } //fin for }catch(IOException e){ System.out.println(e);} finally{try{if( fr != null){fr.close(); }}catch (IOException e){}} System.exit(0);} } PRUEBAS Como resultado del programa;alimprimiren pantalla conforme al archivó que se le asigna cuantas palabras se repiten y cuales con palíndromo. BIBLIOGRAFIA http://java.sun.com/j2se/1.4.2/docs/api/java/util/ArrayList.html http://www.programacion.com/java/tutorial/excepciones/8/ GLOSARIO ARCHIVO: Los archivos también denominados ficheros (file); (file); es una colección de información datos relacionados entre sí), localizada o almacenada como una unidad en alguna parte de la computadora. Los archivos son el conjunto organizado de informaciones del mismo tipo, que pueden utilizarse en un mismo tratamiento; como soporte material de estas informaciones. AMORTISADO: es un término económico y contable,, referido al proceso de distribución en el tiempo de un valor duradero. Adicionalmente se utiliza como sinónimo de depreciación en cualquiera de sus métodos.