Hoi Ik heb het volgende probleem:
Ik lees een socketstream uit, echter als nu de hoeveelheid data
groter is dan de Receivebuffersize, dan moet ik blijven uitlezen
(DataAvailable) totdat alle data binnen is. Nu simuleer ik dit door telkens
maar 5 bytes van de stream te lezen. Dit gaat allemaal goed, elke slag
van de repetitie bevindt zich een andere string in de variabele ByteString.
Echter de variabele data, die blijft alleen maar de allereerste waarde die eraan
toegekend is vasthouden, anders gezegd, de overige strings worden niet
geconcateneerd. Nu heb ik wel een idee hoe dat komt, maar geen oplossing.
Als ik in de debugger kijk bij variables, dan zie ik dat de waarde van data
"STRING is en de afsluithaak " die mist, dus is de string niet goed afgesloten volgens mij en kan die daardoor niet concateneren, alleen hoe zou ik dit op moeten lossen|?
Stel ik verstuur de string : "dit is een test"
na uitvoering van deze code bevat Data
de waarde "dit i (zonder de afsluithaak ")
Ik lees een socketstream uit, echter als nu de hoeveelheid data
groter is dan de Receivebuffersize, dan moet ik blijven uitlezen
(DataAvailable) totdat alle data binnen is. Nu simuleer ik dit door telkens
maar 5 bytes van de stream te lezen. Dit gaat allemaal goed, elke slag
van de repetitie bevindt zich een andere string in de variabele ByteString.
Echter de variabele data, die blijft alleen maar de allereerste waarde die eraan
toegekend is vasthouden, anders gezegd, de overige strings worden niet
geconcateneerd. Nu heb ik wel een idee hoe dat komt, maar geen oplossing.
Als ik in de debugger kijk bij variables, dan zie ik dat de waarde van data
"STRING is en de afsluithaak " die mist, dus is de string niet goed afgesloten volgens mij en kan die daardoor niet concateneren, alleen hoe zou ik dit op moeten lossen|?
Stel ik verstuur de string : "dit is een test"
code:
1
2
3
4
5
6
7
8
9
| Dim data As String = ""
While networkStream.DataAvailable()
Dim bytes(5) As Byte
networkStream.Read(bytes, 0, 5)
Dim ByteString As String = ""
ByteString = Encoding.ASCII.GetString(bytes)
Data = Data & ByteString
End While |
na uitvoering van deze code bevat Data
de waarde "dit i (zonder de afsluithaak ")