Concatenazione stringhe ...strano errore

giovedì 16 marzo 2006 - 15.07

Amodio Profilo | Expert


salve a tutti
è da un paio di giorni che mi succede una cosa strana, prorprio ad una stringa che si chiama valoredato,
se essa la concateno ad un'alra stringa...non si concatena!


ora ho notato meglio una cosa. hce nella finestra immedita se spingo:

? valoredato
"VIA T ARCIDIACONO N 165

si, insomma via t.arcidianno compare senza apice di ciusura, e se vado con il cursore sul risultato e spingo fine, mi va proprio sul 165!
mentre len(valoredato)=29

cosa posso fare?
grazie

fguida Profilo | Expert

Puoi postare il codice?
Vorrei vedere come elabori la variabile stringa..
Francesco

Amodio Profilo | Expert

ecco una decina di righe di codice:

Dim valori As String = ""
ValoreDato = ds.Tables(0).Rows(x).Item(i) & "" 'riga x ,colonna i

indice = ds.Tables(0).Rows(x).Item(ColonnaINdice) & "" 'prima colonna trovo l'indice

valori = valori & rcoddato & ","
valori = valori & "'" & ValoreDato & "',"
valori = valori & "'" & indice & "',"
valori = valori & "'" & RcodCampagna & "',"

allora prima dichiaro valori come string e la setto a =""
poi valoredato(sarebbe un'altra variabile sempre string)
poi cercodi concatenare mano a mano i valori (tte stringhe tranne indice

p.s.
addirittura ho cercato di fare questo:
ValoreDato = Replace(ValoreDato, Chr(10), "") 'diversi errori dovuti a uesto carattere
ValoreDato = Replace(ValoreDato, Chr(13), "")
nel caso ci fosse qualche carattere strano,..ma pare che nn funge ancora

grazie :(

fguida Profilo | Expert

Buongiorno...

scusa la domanda, ma il doppio apice ripetuto sulla riga:

> ValoreDato = ds.Tables(0).Rows(x).Item(i) & "" 'riga x ,colonna i

che utilità ha?
Poi hai verificato in fase di debug che tutte le tue variabili stringa siano valorizzate?
AL momento non posso testarlo il codice, quindi vado a naso...


-----------------------
Francesco Guida
www.photographare.net

Amodio Profilo | Expert

que. doppio apice mi serviva per evitare campi null
cosi concatenati a doppio apice diventa campo vuoto ....mi è stato chiesto dall'amministratore

:(
sai come posso evitare caratteri strani?,sempre se il motivo è una carattere strano?
grazie

fguida Profilo | Expert

Guarda, io ho fatto una copia del to codice su una page VB...
Ovviamente ho sostituito il ds con stringhe per necessità; se il risultato che hai tu è string, non dovresti avere problemi.... hai verificato che i valori ritornino?
Ecco il codice:
Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

La tua concatenazione è corretto, ed anche gli apici; verificherei a questo punto i valori dei campi del db
-----------------------
Francesco Guida
http://www.photographare.net

Amodio Profilo | Expert

e per la gioia di grandi e piccini...
ecco il codice

completo di database
allora ...
il valore che da sempre errore è nel campo VIA_RES


ecco il codice che faccio per valorizzare il tutto:
oledbconn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & PathFilename & ";User Id=admin;Password=" & password & ";"
' "Driver={Microsoft Access Driver (*.mdb)};Dbq=" & PathFilename & ";Uid=Admin;Pwd=;"
'
da = New OleDbDataAdapter("SELECT * FROM [" & NomeTabella & "] order by " & ColonnaINdice, oledbconn)
oledbconn.Open()
da.Fill(ds)

beh fin qua nn penso ci sia niente di anormale...cmq basta fare un semplice ciclo con il codice del precedente post per vedere valorizzato la variabile valoredato:
ValoreDato = ds.Tables(0).Rows(x).Item(i)
e cercare di concatenarla ad un'altro valore...e per magia...nn concatena un *****,anzi l'apice finale neanhce lo fa vedere
beh...ora spero di aver dato + indicazioni
se volete tutta la sub per me nn c'è problema!
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5