ciao a tutti!!!
mi sono incastrato in un esercizio di java sui file di lettura e scrittura...l'esercizio sarebbe dato un file.txt leggere il contenuto e cambiare l'interno delle parole più grandi di tre lettere cioè lasciare la prima e l'ultima parola e mischiare le lettere rimanenti.es: gatto=gtato.
Il testo è il seguente:
"Secondo una ricerca dell’Università di Cambridge non importa l’ordine delle lettere in una parola, l’unica cosa che conta è che la prima e l’ultima lettera siano al posto giusto. Tutte le altre lettere della parola possono essere invertite senza creare problemi alla lettura."
e dovrebbe convertirsi più o meno in questo:
Sceodno una rcircea dlel’Uvitrisenà di Cmbairgde non ipromta l’odirne dlele lrteete in una proala, l’uicna csoa che cntoa è che la pimra e l’utlmia ltetrea saino al psoto gusito. Ttute le atlre lrteete dlela poalra psonoso esrsee itinvtere snzea carere prleobmi alla letutra.
io ho lo vorrei inserire qua dentro:
un pò laborioso...però il tema è trovare la funzione che separa le parole e cambia il suo interno. Io ho provato con:codice:public static void main(String[] args) { String nativeLF = UIManager.getSystemLookAndFeelClassName(); try { UIManager.setLookAndFeel(nativeLF); } catch (Exception e) { } JFileChooser selector = new JFileChooser(); selector.setFileSelectionMode(JFileChooser.FILES_ONLY); int ok = selector.showOpenDialog(null); if (ok != JFileChooser.APPROVE_OPTION) { JOptionPane.showMessageDialog(null, "ciao, alla prossima"); } else { File fitxerEntrada = selector.getSelectedFile(); String parola = null; try { Scanner entra = new Scanner(fitxerEntra); parola = entra.next(); System.out.println("Prima parola=" + parola); } catch (FileNotFoundException e) { System.out.println("file non trovato"); } JFileChooser selector2 = new JFileChooser(); int ok2 = selector2.showSaveDialog(null); if (ok2 != JFileChooser.APPROVE_OPTION) { JOptionPane.showMessageDialog(null, "ciao. alla prossima"); } else { File fitxerEsci = selector2.getSelectedFile(); try { PrintWriter pw = new PrintWriter(new FileWriter(fitxerEsci, true)); pw.println(parola); pw.println("funzione que mi converta il testo");//!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!!! pw.close(); } catch (IOException e) { System.out.println("Problemes d'E/S"); } } } } }
però non so come continuare!!codice:try { BufferedReader leer = new BufferedReader(new FileReader(archivo)); while ((s = leer.readLine()) != null) { StringTokenizer st = new StringTokenizer(s); st.countTokens(); while (st.hasMoreElements()) { parola = st.nextToken(); } } leer.close(); } catch (IOException e) { System.out.println("error bufferReader3"); }
qualcuno mi sa aiutare???
grazie della pazienza

Rispondi quotando
, adesso ho capito!!!