Salve a tutti....

ho un file CSV che devo importare all'interno di un DB con una procedura fatta da me.
I campi del CSV sono separati da ; (punto e virgola) ed alla fine di ogni riga ho un bel line feed.

All'interno della mia procedura ciclo il file riga per riga e splitto (come delimitatore il ; ) la stringa in un array di stringhe.

Il problema è che all'interno di un campo del cvs (prima della reale fine riga), certe volte c'è un line feed, quindi quella che dovrebbe essere una riga sola realmente me la spezza in due righe e la mia procedura va in bomba.

immaginate un file del genere

N.B. (LF) = Line Feed

12;descrizione prodotto;prezzo;unita di misura(LF)
<b><i>14;descrizio del prodotto(LF)
andando a capo;prezzo;unita di misura(LF)</i></b> 
16;descrizione prodotto;prezzo;unita di misura(LF)


La riga che mi da il problema è quella in grassetto/corsivo.

Come posso fare a risolvere questo problema?
Modificato da s.belia il 14 giugno 2007 17.39 -
s.belia wrote:
Come posso fare a risolvere questo problema?

beh, dopo aver fatto l'array, devi verificare che ogni riga abbia la stessa dimensione. se non ce l'ha, provi a ricostruirla. l'algoritmo non dovrebbe essere poi così assurdo. occhio che probabilmente quelli in mezzo magari sono solo \n e non \r\n, come quelli finali.

Daniele Bochicchio | ASPItalia.com | Libri
Chief Operating Officer@iCubed
Microsoft Regional Director & MVP

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.