[VB.NET] Piccolo aiuto con una variabile Byte

venerdì 25 marzo 2005 - 20.16

w_t Profilo | Junior Member

Ho tradotto un codice da C# a VB.NET

ho trovato un solo errore, non so come tradurre il rigo:

come si vede nel commento, in C# funziona cosi: '( in C# ) ---> Byte[] RecvBytes = new Byte[2256];


in VB.NET cosi non da errore ma non mi funziona
Dim RecvBytes(2256) As Byte


se faccio cosi mi dice che Byte non ha costruttori....
Dim RecvBytes As Byte New Byte(2256)


Quale e' il metodo giusto ???



PS. di seguito al codice VB.NET ho riportato l'originale commentato in C#



Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra

19018 Profilo | Expert

Ciao io uso sempre Dim RecvBytes(2256) As Byte e funziona!Ciao

w_t Profilo | Junior Member

OK grazie mille funziona!!!

ho un altro problemino;


1) Invio la Stringa per la Query a PHP, e fin qui' tutto OK!
2) Mi ritorna uno Stream di dati e cioe' un elenco di nomi di "Agenti" (vedi codice...)
3) Dovrei potere esplodere questa stringa di ritorno in tante sottostringhe contenenti un nome ciascuna, per poi popolarci la mia ListView


se fossi in PHP "esploderei la stringa dato un carattere da decidere", in un Array di dati, per poi fare un ciclo "foreach" Popolando la "ListView".


ma in VB.NET non so come si fa per esplodere una stringa .........



Dim lipa As IPHostEntry = Dns.Resolve("localhost") Dim addr As IPAddress() = lipa.AddressList Dim lep As New IPEndPoint(lipa.AddressList(0), 80) Dim s As New Socket(lep.Address.AddressFamily, SocketType.Stream, ProtocolType.Tcp) Try s.Connect(lep) Catch e As Exception MsgBox(("Exception Thrown: " + e.ToString())) End Try Dim br As String = vbCrLf Dim protocol As String = "HTTP/1.0" Dim target As String = "/phpinfo.php" Dim body As String = "sql=SELECT Nome_Agente FROM Agenti" Dim headers As String = "POST " & target & " " & protocol & br headers += "Content-Type: application/x-www-form-urlencoded" & br headers += "Content-Length: " & body.Length.ToString & br & br Dim msg As Byte() = Encoding.ASCII.GetBytes(headers & body) Dim i As Integer = s.Send(msg, 0, msg.Length, SocketFlags.None) Dim RecvBytes(1024) As Byte Dim strRetPage As String = Nothing Dim ASCII As Encoding = Encoding.ASCII Dim bytes As Int32 = s.Receive(RecvBytes, RecvBytes.Length, 0) 'OUTPUT MsgBox(Encoding.ASCII.GetString(RecvBytes)) s.Shutdown(SocketShutdown.Both) s.Close()

19018 Profilo | Expert

Ciao!Se ho capito quello cerchi ti basterà usare il metodo split della classe String!Ciao
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