Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
C# / VB.NET - [VB.NET] Troncamento dello zero in stringa binaria
Forum - C# / VB.NET - [VB.NET] Troncamento dello zero in stringa binaria

Avatar
Dyango (Normal User)
Pro


Messaggi: 83
Iscritto: 02/01/2009

Segnala al moderatore
Postato alle 17:56
Mercoledì, 18/08/2010
ciao ragazzi, ho riscontrato un problema quando mi viene restituita la stringa contenente il binario di un numero decimale, nel caso in cui il binario incominci con 1 tutto apposto ho le mie 8 cifre di 1 e 0, mentre se il binario del numero incomincia per 0 lo toglie e mi lascia le rimanenti 7 cifre, pero a me servono tutte e 8 e nn solo 7 anche se la prima cifra e 0, vorrei sapere da voi perche attua questo troncamento? e come risorverlo?




la saggezza di un uomo non dipende da quante cose sà ma da quante informazioni riesce a trovare
PM Quote
Avatar
walker93 (Member)
Expert


Messaggi: 460
Iscritto: 31/01/2010

Segnala al moderatore
Postato alle 20:38
Mercoledì, 18/08/2010
un chiarimento:
se ci sono 2 zeri consecutivi li toglie entrambi o uno solo?
es.
partenza= 10110100
risultato= 101101 oppure 1011010?


Il software è come il sesso, è meglio quando è libero.
Linus Torvalds, Conferenza della Free Software Foundation, 1996 (attribuito)

Non provare mai a spiegare il computer a un profano. È più facile spiegare il sesso a una vergine.
Robert Anson Heinle
PM Quote
Avatar
Il Totem (Admin)
Guru^2


Messaggi: 3635
Iscritto: 24/01/2006

Segnala al moderatore
Postato alle 20:45
Mercoledì, 18/08/2010
Stringa.PadLeft(8, "0")


"Infelici sono quelli che hanno tanto cervello da vedere la loro stupidità."
(Fligende Blatter)

"Dubitare di se stessi è il primo segno d'intelligenza."
(Ugo Ojetti)
PM Quote
Avatar
Iohoilpotere (Ex-Member)
Pro


Messaggi: 80
Iscritto: 13/09/2009

Segnala al moderatore
Postato alle 22:05
Mercoledì, 18/08/2010
assicurati che la variabile sia una stringa, se te lo legge come intero ti toglie logicamente lo zero iniziale.

Es.
Codice sorgente - presumibilmente VB.NET

  1. Dim var2 As Integer = "00100100110"
  2.         Dim var As String = var2
  3.         MsgBox(var)



questo codice ritorna 100100110 senza 0, perché la variabile passa da un intero e questo te li toglie, se puoi fai avvenire la conversione in una stringa.

PM Quote
Avatar
Dyango (Normal User)
Pro


Messaggi: 83
Iscritto: 02/01/2009

Segnala al moderatore
Postato alle 14:50
Giovedì, 19/08/2010
nn faccio come ha detto iohoilpotere, o almeno nn mi sembra:-|,
ecco una parte di codice:

Codice sorgente - presumibilmente VB.NET

  1. Dim binary_str As String = ""
  2. dim rtn_byte() as byte {1,2,3,4}
  3.         For i As Byte = 0 To 3
  4.             binary_str &= Convert.ToString(rtn_byte(i), 2).PadLeft(8, "0")
  5.         Next



comunque ho risolto mettendo il padleft come consigliato da il totem

grazie a tutti per l aiuto:D

Ultima modifica effettuata da Dyango il 19/08/2010 alle 14:51


la saggezza di un uomo non dipende da quante cose sà ma da quante informazioni riesce a trovare
PM Quote