Visualizzazione dei risultati da 1 a 9 su 9
  1. #1
    Utente di HTML.it L'avatar di al3
    Registrato dal
    Jan 2002
    Messaggi
    101

    [java] replaceAll: non riesco ad utilizzarlo!

    Il problema e' che dovendo andare a salvare il contenuto di una text field in un database se qualcuno inserisce apici nel testo l'inserimento nel database mi va a monte, quindi dovrei sostituire laddove trovo un apice singolo con 2 apici singoli, ovvero ' con ''.

    Il codice che mi da problemi e':


    testo = String.valueOf(messaggioTextField.getText());
    testo = testo.replaceAll("'","''");

    L'errore me lo da sul replace.All e dice:
    ... Method replaceAll(java.lang.String, java.lang.String) not found in class java.lang.String

    eppure nel codice gli import li ho fatti:
    import java.awt.*;
    import javax.swing.*;
    import java.io.*;
    import java.sql.*;
    import java.lang.String;

    HELP ME!!!!

    ... è l'hip hop che sta ingoiando la mia vita dal di dentro!

  2. #2
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    usi un jdk vecchio, replaceAll mi pare parta dalla 1.4

  3. #3
    Utente di HTML.it L'avatar di al3
    Registrato dal
    Jan 2002
    Messaggi
    101
    Originariamente inviato da floyd
    usi un jdk vecchio, replaceAll mi pare parta dalla 1.4
    Ho appena istallato la JDk2 1.4.1.01 ... solo che durante l'istallazione mi dice che non è supportata dal service pack del mio win 2000 e devo aggiornarmi al service pack 2 dal sito microzzoz.

    Ho provato ugualmente con il mio amato visual cafè a far partire il programma senza mettere il service pack 2 ma di fare quel replaceAll proprio nn vuole sentirne!!!


    maledetti apici!

    ... è l'hip hop che sta ingoiando la mia vita dal di dentro!

  4. #4
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    prova con questo
    codice:
    StringTokenizer st = new StringTokenizer(stringa, "'");
    String result = stringa.charAt(0) == '\'' ? "''" : "";
    while (st.hasMoreTokens()) 
    result += st.nextToken() + "''";
    result = stringa.charAt(stringa.length()-1)== '\'' ? result.substring(0, result.length()-2 : result;

  5. #5
    Utente di HTML.it L'avatar di al3
    Registrato dal
    Jan 2002
    Messaggi
    101
    Originariamente inviato da floyd
    prova con questo
    codice:
    StringTokenizer st = new StringTokenizer(stringa, "'");
    String result = stringa.charAt(0) == '\'' ? "''" : "";
    while (st.hasMoreTokens()) 
    result += st.nextToken() + "''";
    result = stringa.charAt(stringa.length()-1)== '\'' ? result.substring(0, result.length()-2 : result;
    sei sicuro che questo codice sia giusto?
    X esempio nella seconda riga ci sono 3 apici singoli vicini e li gia' mi da errore e anche i due punti : nell'ultima riga non gli piacciono....
    ... è l'hip hop che sta ingoiando la mia vita dal di dentro!

  6. #6
    Utente di HTML.it L'avatar di floyd
    Registrato dal
    Apr 2001
    Messaggi
    3,837
    avevo scritto \ ' è il forum che lo sostituisce con '

  7. #7
    Utente di HTML.it L'avatar di al3
    Registrato dal
    Jan 2002
    Messaggi
    101
    Originariamente inviato da floyd
    avevo scritto \ ' è il forum che lo sostituisce con '
    nn ti preoccupare x l'email, nn miserve + grazie! Facendo il quote del tuo messaggio ho visto il codice esatto!
    Grazie 1000 di nuovo!

    adorati apici....
    ... è l'hip hop che sta ingoiando la mia vita dal di dentro!

  8. #8
    Utente di HTML.it
    Registrato dal
    Oct 2006
    Messaggi
    74
    ciao

    Scrivi così :
    String prova = "testo'";
    prova = prova.replaceAll("'", "\"");

    nel codice, per indicare i " si utiliza \"

    In questo modo il codice non va i crash

  9. #9
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,305

    Moderazione

    Ti sei mica accorto che il thread è del 2003???? Morto, defunto, sepolto...

    Non rispondere a discussioni così vecchie.


    Chiudo.

    Ciao.
    "Perchè spendere anche solo 5 dollari per un S.O., quando posso averne uno gratis e spendere quei 5 dollari per 5 bottiglie di birra?" [Jon "maddog" Hall]
    Fatti non foste a viver come bruti, ma per seguir virtute e canoscenza

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2024 vBulletin Solutions, Inc. All rights reserved.