Keskustelut - Visual Basic / C# / .NET - Visual basic 2010 .net stringmuuttuja.lenght


Kili 10:57 22.3.12 
Mitähän pitäis poistaa string muuttujasta joka vastaan otetaan socketin kautta, että .lenght ei palauttaisi pituutta 2 numeroa liian isona.
Kokeilin jo ajaa trim ja replace \r\n, "" mutta aina vain antaa pituudeksi aina kaksi liikaa.

....
Dim data As String = Nothing
Dim stream As NetworkStream = client.GetStream()
Dim i As Int32

i = stream.Read(bytes, 0, bytes.Length)
While (i <> 0)
' Translate data bytes to a ASCII string.
data = System.Text.Encoding.ASCII.GetString(bytes, 0, i)
'Tämän jäkeen pitäisi saada data.lenght oikein
'Ei auta trim eikä \r\n poistaminen...
...
...


editoitu: 11:43 22.3.12
neau33 11:15 22.3.12 
how about these?

Visual Basic
data = data.Replace(Environment.NewLine.ToCharArray,String.Empty.ToCharArray)
 

tahi

Visual Basic
'...
Try
   data = data.Substring(0, data.Length - 2)
Catch ex As Exception
End Try
MsgBox(data.Length)
'...
 

vaan mitäs jos kuitenkin tsekkaisit tämän!
weicco 11:33 22.3.12 
Varmaan kannattaisi selvittää mitkä ne kaksi merkkiä ovat, jos ne ei kerran ole \r\n. Tuuppaa data-array integereinä ulos ja katso täältä mitä se sisältää http://www.asciitable.com/