Hola quiero hacer una pequeña aplicacion que me trae de cabeza, quiero que de un fichero txt me cuente la cantidad de veces que aparece una pareja de letras, o simbolos, por ejemplo un fichero txt con la palabra cocotero
co - oc - co - ot - te - er - ro
y luego contar las repeticiones, por ejemplo co aparece dos veces
he ehcho este codigo pero nada no funciona ya que no soy capaz de controlar el fin de fichero y leo enteros y se hacen cosas raras..
Aver si alguien sabe por que el bucle while nunca para y por que me salen caracteres raros si solo tengo un txt con 3 letras aaa
public static void main(String[] args) {
// TODO Auto-generated method stub
Lista L = new Lista();
System.out.println("Comenzando a analizar fichero fuente..");
try {
//BufferedReader bf = new BufferedReader(new FileReader("muestra.txt"));
char primero;
char segundo;
/*try {
primero = (char) bf.read();
segundo = (char) bf.read();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}*/
FileReader f = new FileReader("muestra.txt");
try {
primero = (char) f.read();
segundo = (char) f.read();
while(segundo != -1) {
String s = "" + (char) primero + (char) segundo;
System.out.println((char) primero);
System.out.println(segundo);
System.in.read();
//Tupla T = new Tupla(s, 1);
//L.add(T);
primero = segundo;
segundo = (char) f.read();
}
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
} catch (FileNotFoundException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
System.out.println("Guardando resultados en el fichero resultados.csv");
L.mostrar("resultados.csv");
System.out.println("Fichero guardado con exito");
}