Diccionario de clasificación Java
importar java.awt.*;
importar java.awt.event.*;
importar java.util.vector ;
Importar archivo Java .io .
Importar vector util . noSameWord
Estadísticas de palabras()
{ allWorsd = new Vector();
no hay la misma palabra = new Vector();
}
public void wordStatistic(File)
{ try { RandomAccessFile in one = new RandomAccessFile(file, "rw" // Crea un objeto que apunte a inOne del archivo file); .
RandomAccessFile int wo = new RandomAccessFile(file, "rw"); //Crea un objeto que apunte al archivo file inTwo.
long wordStarPostion = 0, wordendsposition = 0;
longitud larga = en una longitud();
int flag = 1; p>int c =-1;
for(int k = 0; k lt=length; k)
{ c = inone. ()método.
Booleano =(c lt;= ' Z ' ampc gt= ' A ') | (c lt; = ' z ' ampc gt= ' a '); p>if(sh)
{ if(flag==1)
{ wordstarposition = en uno. getfile pointer()-1;
bandera = 0;
}
}
Otro
{ if(flag==0)
{
if(c==-1)
wordendposion = inone . getfile pointer();
Otro
wordendposion = inone . pointer()-1;
intwo . seek(wordstarposition); // inTwo llama al método de búsqueda para mover la posición de lectura y escritura a wordStarPostion.
byte cc[]= nuevo byte[(int)wordendposition-(int)wordstarposition];
int wo . ) método y pasar cc a a.
Palabra de cadena = nueva cadena(cc);
allworsd . add(palabra)
if (!(noSameWord.contains(word)))
nosameword . add(palabra);
}
bandera = 1
}
}< / p>
inone . close();
int wo close();
}
catch(Excepción e){} p >
}
Vector público getAllWorsd()
{ return allWorsd
}
Vector público getNoSameWord() p >
{ return noSameWord
}
}
La clase StatisticFrame extiende Frame para implementar ActionListener
Estadísticas de lenguaje; p>
p>
TextArea showMessage
El botón abre el archivo;
FileDialog abre FileDialog
Vector allWord, noSameWord
Marco estadístico público ( )
{ estadística = new WordStatistic();
mostrar mensaje = new TextArea();
openFile =Nuevo botón (" Abrir archivo");
openfile . addactionlistener(this);
add(openFile, BorderLayout. North);
add(showMessage, BorderLayout. Center) ;
openfiledialog = diálogo de archivo nuevo(this, "Diálogo de archivo abierto", diálogo de archivo.
cargar);
toda la palabra = nuevo Vector();
ninguna misma palabra = nuevo Vector();
setSize(350, 300); p>
p>
establecer visible(verdadero);
addWindowListener(new WindowAdapter()
{cierre de ventana pública vacía (WindowEvent e)
{ sistema . salir(0);
}
});
validar();
}
Se ha realizado una operación pública no válida (evento de operación e)
{ no hay la misma palabra .
todas las palabras
<. p>mostrar mensaje . settext (null);openfile dialog set visible(true);
string fileName = openfile dialog (). if (nombre de archivo!= Vacío)
{ estadística.wordStatistic(nuevo archivo (nombre de archivo));
toda palabra = estadística getallworsd();
no misma palabra = estadística .getno misma palabra();
mostrar mensaje .append(" \ n " nombre de archivo "contiene" allWord.size() "palabra en inglés");
Mostrar mensaje. append("\nHay "noSameWord.size()"diferentes palabras en inglés");
Mostrar mensaje.
Append("\nEn orden de frecuencia de uso:\n");
int count[]= new int[no misma palabra size()];
for(int. I = 0;iltno hay la misma palabra . size();i )
{ String s 1 =(String)no hay la misma palabra en(I);
for(int j. = 0; j toda la palabra . tamaño(); j )
{ String S2 =(String)toda la palabra en(j);
if(s1.equals(s2). ))
count[I];
}
}
for(int m = 0; m no hay la misma palabra . tamaño (); m )
{ for(int n = m 1; n no hay la misma palabra . size(); n )
{ if(count[n] gt;count[ m])
{ String temp =(String)no hay la misma palabra . elementat(m);
no hay la misma palabra setelementat((String)no hay la misma palabra . elementat(n ) ), m);
noSameWord.setElementAt(temp, n);
int t = recuento[m]; [ n];
cuenta[n]= t;
}
}
}
para ( int m = 0; m no hay la misma palabra . size(); m )
{ show message .(" \ n " (String)no hay la misma palabra . elemento en(m)
":" recuento[m] "/" allWord.size()
" = " (1.0 * recuento[m])/todo el tamaño de la palabra());
}
}
}
}
Clase pública sy6_2
{ public static void main( String args[])
{ nuevo marco estadístico();
}
}