Newsgroup: it.comp.java
Titolo: Problema versioni J2SE e funzioni

Caio a tutti,
sto facendo un applicativo che ho sviluppato sulla 1.4 ma che devo
migrare alla 1.2.
Il mio porblema è questo:
leggo un file di test formattato sempre alla stessa maniera, trasformo
il testo in
un array splittandolo seguendo un determinato criterio poi inserisco
il tutto in un db!
Il blocco che genero è questo:
String bloccoAgenzie[] = agSeparated.split("A0000000");
for (int i = 1; i < bloccoAgenzie.length; i++) {
String bloccoValori[] = bloccoAgenzie[i].split("\\*");
// Variabili per DB
String codice = bloccoValori[0].trim();
String societa= bloccoValori[2].trim();
String area= bloccoValori[3].trim();
String territorio= bloccoValori[4].trim();
String descrizione =
bloccoValori[5].replaceAll("NOM:","").replaceAll("\\'","\\\\'").trim();
ecc...ec... ec.....
Siccome non sono un esperto, tutt'altro, mi son trovato con la ver 1.2
senza split e senza replaceAll.
Come risolvo??
Grazie a tutti Cris.

Nessuno riesce ad aiutarmi???
sono davvero in crisi!!!
Ciao,
Cris.


Io non sapevo neanche esistessero, ora ci do' un'occhiata :-)
Comunque usa uno StringTokenizer per spezzare la stringa nei singoli pezzi. Per effettuare
invece delle replace su stringhe trasformale in StringBuffer, modificali, quindi se
necessario ritrasformali in stringhe.
Ovviamente, leggi prima la documentazione!
HTH,
    Bruno.
---
| Bruno Bossola 
| A Java Software Engineer :-)
| 
http://digilander.iol.it/bbossola
|
| Membro del JUG Torino - 
http://www.jugtorino.it
| 

Che io sappia (spero di non cannare ^-^' ) prima dell'introduzione del
metodo split non c'era modo di splittare una stringa utilizzando un'intera
stringa come separatore (StringTokenizer permette di utilizzare una serie di
caratteri specificati per mezzo di una stringa). Idem per quanto riguarda il
metodo replaceAll (il metodo replace accetta solo caratteri come parametri).
Io li ho implementati a manina xč mi servivano... se vuoi ti invio il codice
(nn so se č corretto inviarlo sul ng).
Ciao,
    Alessio

 servire a qualcuno, non so!
Ok, il codice non è il massimo dell'eleganza: spero di non urtare la
sensibilità di nessuno... accetterò tutte le critiche del caso :-P
    public static final String replace(String source,String from, String to)
{
        int lPos = 0;
        int cPos = source.indexOf(from,0);
        if (cPos<0) {
            return source;
        } else {
            StringBuffer sb = new StringBuffer();
            while (cPos>=0) {
                sb.append(source.substring(lPos,cPos));
                sb.append(to);
                lPos = cPos+from.length();
                cPos = source.indexOf(from,lPos);
            }
            sb.append(source.substring(lPos));
            return sb.toString();
        }
    }
    public static final String[] split(String source, String sep) {
        try {
            java.util.ArrayList tokens = new java.util.ArrayList();
            int startPos=0;
            int lastPos=startPos;
            while ((startPos=source.indexOf(sep,startPos)) >=0) {
                if ((startPos-lastPos)>0) {
                    tokens.add(source.substring(lastPos,startPos));
                }
                startPos+=sep.length();
                lastPos=startPos;
            }
            if (lastPos<source.length()) {
                tokens.add(source.substring(lastPos));
            }
            String[] retTokens = new String[tokens.size()];
            retTokens=(String[])tokens.toArray(retTokens);
            return retTokens;
        } catch (Exception e){
            return null;
        }
    }
Ciao,
    Alessio

Io non me ne intendo di codice java perfetto o meno,
per me è uno spettacolo, FUNZIONAAAA!!!
Sei un grande!!!!!
Ciao,
Cris.