Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13

Discussione: [JAVA] StreamTokenizer

  1. #1
    Utente di HTML.it
    Registrato dal
    Jun 2011
    Messaggi
    202

    [JAVA] StreamTokenizer

    Salve,

    se ho una stringa passata da client a server, come concatenazione di stringhe, tipo:

    s1+" "+s2+" "+s3

    una volta passato il tutto al server, tramite un flusso di InputStream e incapsulato in un BufferedReader, utilizzo lo StreamTokenizer per l'analisi della stringa passata al server.

    Ora devo ritornare ad avere 3 stringhe separate, come posso fare, se utilizzo il while+ switch/case, riesco a ritornarmene 2 distinte, nel caso sia una TT_WORD o una TT_NUMBER...

    ma orientativamente avrò una s1 che è una stringa, s2 che è un valore intero, s3 che è una nuova stringa, con l'unica cosa che s3 non è sempre presente, può anche non esserci.

    Avete soluzioni, tks.

  2. #2
    Moderatore di Programmazione L'avatar di LeleFT
    Registrato dal
    Jun 2003
    Messaggi
    17,320
    Sarà che io sono allergico ai tokenizer in genere... ma sinceramente non ho capito quale sia il problema.

    Se s1, s2 e s3 non contengono spazi (condizione necessaria affinchè sia possibile tornare allo stato iniziale; diversamente occorre usare un delimitatore diverso dallo spazio), è sufficiente prendere la stringa letta dal server e splittarla attorno allo spazio:

    codice:
    String str = ...;   // Stringa ricevuta dal server
    String[] tokens = str.split(" ");
    
    String s1 = tokens[0];
    String s2 = tokens[1];
    String s3 = tokens[2];
    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

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    Originariamente inviato da LeleFT
    Sarà che io sono allergico ai tokenizer in genere... ma sinceramente non ho capito quale sia il problema.
    non ce l'hai solo tu questa allergia, trovo artificioso il giro da fare per usare questo oggetto, faccio molto prima a prendere tutto e parsarlo localmente.
    RTFM Read That F*** Manual!!!

  4. #4
    Utente di HTML.it
    Registrato dal
    Jun 2011
    Messaggi
    202
    ho usato il metodo che mi hai suggerito, è perfetto basta passare la stringa concatenata

    s1+" "+s2 e ottengo entrambi i dati

    tks...idem x me StreamTokenizer e StringTokenizer, sono un pò pesantucci da implementare -.-

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    Originariamente inviato da neidus
    ho usato il metodo che mi hai suggerito, è perfetto basta passare la stringa concatenata

    s1+" "+s2 e ottengo entrambi i dati

    tks...idem x me StreamTokenizer e StringTokenizer, sono un pò pesantucci da implementare -.-
    implementare?

    RTFM Read That F*** Manual!!!

  6. #6
    Utente di HTML.it
    Registrato dal
    Jun 2011
    Messaggi
    202
    ci siamo capiti....implementare il processo di tokenizer della stringa concatenata....effettuare uno switch/case o altro...quello intendevo

  7. #7
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    Originariamente inviato da neidus
    ci siamo capiti....implementare il processo di tokenizer della stringa concatenata....effettuare uno switch/case o altro...quello intendevo
    veramente io non ti ho capito.
    Spero che tu con implementare intenda utilizzare quella libreria nei tuoi programmi perché nella OOP implementare significa scrivere il tuo algoritmo che risolva un determinato problema, in questo caso scrivere il tuo tokenizer.

    Parlando di programmazione non buttarli a caso i termini
    RTFM Read That F*** Manual!!!

  8. #8
    Utente di HTML.it
    Registrato dal
    Jun 2011
    Messaggi
    202
    perchè scusa quando risolvi il problema della scomposizione della stringa, utilizzando lo streamtokenizer o stringtokenizer, non stai implementando un'algoritmo che utilizza quella classe?? e quindi risolvendo un problema, se quella scomposizione fosse fatta in un metodo tu lo utilizzeresti o implementeresti prima il metodo??

    non li butto a caso i termini tranquillo.

  9. #9
    Utente di HTML.it
    Registrato dal
    Feb 2007
    Messaggi
    4,157
    tks...idem x me StreamTokenizer e StringTokenizer, sono un pò pesantucci da implementare -.-
    guarda, personalmente non userei MAI in questa frase il verbo IMPLEMENTARE.
    Io ho capito che tu ti stavi scrivendo la tua versione di *Tokenizer, non che stessi risolvendo un problema tuo usando queste API, per questo ti ho scritto dopo.

    Spero che tu abbia capito la differenza

    EDIT: vedi che siamo in 2 ad aver capito la stessa cosa?
    RTFM Read That F*** Manual!!!

  10. #10
    Utente di HTML.it
    Registrato dal
    Dec 2009
    Messaggi
    1,123
    Originariamente inviato da neidus
    ho usato il metodo che mi hai suggerito, è perfetto basta passare la stringa concatenata

    s1+" "+s2 e ottengo entrambi i dati

    tks...idem x me StreamTokenizer e StringTokenizer, sono un pò pesantucci da implementare -.-
    Detto così, quanto hai scritto significa che tu hai scritto l'algoritmo che effettua il compito di tokenizzazione di una stringa (una tua string tokenizer diciamo).

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 © 2025 vBulletin Solutions, Inc. All rights reserved.