Poblemi con metodo indexof

lunedì 28 aprile 2008 - 11.10

bluland Profilo | Guru

Salve

faccio un indexof di una stringa, seno mi trova il carattere cercato mi dovrebbe ritornare - 1 il fatto e' che lo ritorna ma in forma esadecimale FFFFFFFFFFFFFFFF


int index = int.Parse(table.Rows[i]["Creation_Date"].ToString().IndexOf(" ").ToString());

invece se prendo direttamente il valore stringa mi trovo -1, si ritrasforma in esadecimale se tento di fare la conversione..
come mai?come faccio ad ottenerlo in forma decimale?


saluti
--------------------
Vincenzo PESANTE
System Engineer

freeteo Profilo | Guru

>Salve
ciao!


>faccio un indexof di una stringa, seno mi trova il carattere
>cercato mi dovrebbe ritornare - 1 il fatto e' che lo ritorna
>ma in forma esadecimale FFFFFFFFFFFFFFFF
non è possibile questo, c'e' qualche altro errore da un'altra parte, o lo stai visualizzando a debug, ed hai il visualizzatore Hex...


>int index = int.Parse(table.Rows[i]["Creation_Date"].ToString().IndexOf("
>").ToString());
scusa ma questo codice non ha molto "senso", ovvero fai il tuostring per trovare un indice numerico, e poi lo riporti in stringa per poi ritornarti ancora l'indice numerico

ti basta:

int index = table.Rows[i]["Creation_Date"].ToString().IndexOf(" ");

cmq al vedere, il tuo campo del db è un date, se vuoi trovarti meglio fai un cast ad una variabile DateTime, cosi' hai gia' un oggetto "strutturato" dove ti tiri fuori i pezzi che ti interessano:

DateTime data = Convert.ToDateTime(table.Rows[i]["Creation_Date"]);

e cosi' hai data.Days, data.Years, data.Minutes etc...


>invece se prendo direttamente il valore stringa mi trovo -1,
>si ritrasforma in esadecimale se tento di fare la conversione..
>come mai?come faccio ad ottenerlo in forma decimale?
non puo' tornare un valore esadecimale, indexof di una stringa torna l'indice (oovero la posizione all'interno della stringa) di quello che cerchi...e ovviamente torna -1 se non la trova...

ciao.

Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo

bluland Profilo | Guru

>>Salve
>ciao!
>
>
>>faccio un indexof di una stringa, seno mi trova il carattere
>>cercato mi dovrebbe ritornare - 1 il fatto e' che lo ritorna
>>ma in forma esadecimale FFFFFFFFFFFFFFFF
>non è possibile questo, c'e' qualche altro errore da un'altra
>parte, o lo stai visualizzando a debug,
si lo visualizzavo in modalita debug

>ed hai il visualizzatore
>Hex...
>

devo verificare !
>
>>int index = int.Parse(table.Rows[i]["Creation_Date"].ToString().IndexOf("
>>").ToString());
>scusa ma questo codice non ha molto "senso", ovvero fai il tuostring
>per trovare un indice numerico, e poi lo riporti in stringa per
>poi ritornarti ancora l'indice numerico
>
>ti basta:
>
>int index =
>table.Rows[i]["Creation_Date"].ToString().IndexOf(" ");
>
si lo so solo che facevo delle prove, ho sbagliato a riportare il codice.

l'ho messo in una stringa perche se è stringa mi ritorna -1, appena lo metto in un int mi ritorna il codice hex, inoltre ho notato che lo stesso codice su un altro pc mi da normalmente -1, bah.....


--------------------
Vincenzo PESANTE
System Engineer

freeteo Profilo | Guru

>l'ho messo in una stringa perche se è stringa mi ritorna -1,
>appena lo metto in un int mi ritorna il codice hex, inoltre ho
>notato che lo stesso codice su un altro pc mi da normalmente
>-1, bah.....
allora hai il visualizzatore Hex attivato...non puo' essere diversamente

ciao.

Matteo Raumer
[MCAD .net]
http://blogs.dotnethell.it/freeteo
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