questo è quello che sono riuscito:
codice:
package ejercicio;
import java.io.BufferedReader;
import java.io.File;
import java.io.FileReader;
import java.io.IOException;
import java.util.Random;
import java.util.StringTokenizer;
/**
* @author roby
*/
public class Ejercicio {public static String mixpalablas(String inicio)
{
for (int a=0;a<inicio.length();a++){
if (inicio.charAt(a)!=',' && inicio.charAt(a)!='.' )
inicio.charAt(a);
}
char[] vec1 = inizio.toCharArray();
char[] vec2 = inizio.toCharArray();
Random random = new Random();
int r = random.nextInt(vec1.length-1);
int i = 0;
int j = r+1;
while(i <= r){
vec2[vec1.length -i-1] = vec1[i];
i++;
}
while (j <= vec1.length -1){
vec2[j-r-1] = vec1[j];
j++;
}
String nuovaparola = String.valueOf(vec2);
return nuovaparola;
}
public static void main(String[] args) throws IOException {
String filee = "r://esercizio.txt";
String s = "";
int j = 0;
int f = 0;
int i = 0;
String nuevotexto="";
try {
File file = new File(archivo);
if (file.exists()) {
System.out.println("Il file " + filee + ": esiste");
} else if (file.createNewFile()) {
System.out.println("Il file " + filee + ": già caricato");
} else {
System.out.println("Il file " + filee + " :no si può caricare");
}
System.out.println("");
} catch (IOException e) {
System.out.println("error nella creazione");
}
try {
System.out.println("el contenido del archivo es el siguiente: ");
System.out.println("");
BufferedReader leer = new BufferedReader(new FileReader(file));
while ((s = leer.readLine()) != null) {
System.out.println(s);
}
leer.close();
} catch (IOException e) {
System.out.println("error bufferReader");
}
try {
System.out.println("");
BufferedReader leer = new BufferedReader(new FileReader(filee));
while ((s = leer.readLine()) != null) {
f++;
System.out.println("linea " + f + " = " + s.length() + " lettere");
}
leer.close();
} catch (IOException e) {
System.out.println("error bufferReader2");
}
System.out.println("");
try {
BufferedReader leer = new BufferedReader(new FileReader(filee));
while((s = leer.readLine())!= null){
StringTokenizer st = new StringTokenizer(s);
while (st.hasMoreTokens()) {
String token=st.nextToken();
if(token.length()>3){
nuevotexto = token;
System.out.println(mixpalablas(nuovotexto));
}}}
leer.close();
} catch (IOException e) {
System.out.println("error bufferReader3");
}
}}
non sono riuscito a usare il metodo shuffle suggerita allora ho creato una funzione che mi mescoli le lettere senza però riuscire a bloccare la prima l'ultima lettera e senza riuscire a togliere i punti e le virgole!! so che sono vicino alla soluzione però non so nuotare neanche dentro un bicchiere di acqua...avete suggerimenti da darmi??