Decine di caratteri '\0' aggiunti a fine stringa e non interpretati d...

mercoledì 06 maggio 2009 - 16.37

paquito_ita Profilo | Senior Member

Ciao,

ho realizzato del codice per leggere email usando il protocollo POP3. Da una classe che eredita da TCPclient creo un'istanza SSLstream (usando lo stream TCP come argomento del costruttore):
public void Connect(string server, string username, string password) { Connect(server, PopPortNumber); SslStream netStream = new SslStream(GetStream()); netStream.AuthenticateAsClient(server); string response = Response(); if (response.Substring(0, 3) != "+OK") { throw new Pop3Exception(response); } else { .... } } private string Response() { ASCIIEncoding enc = new ASCIIEncoding(); byte[] serverBuffer = new Byte[1024]; int count = 0; while (true) { byte[] buff = new Byte[2]; int bytes = netStream.Read(buff, 0, 1); if (bytes == 1) { serverBuffer[count] = buff[0]; count++; if (buff[0] == '\n') break; } else { break; } } return enc.GetString(serverBuffer); }

La connessione avviene correttamente e la variabile response riporta correttamente il valore di risposta dal server. Purtpoppo in coda alla stringa di risposta ci sono un'infinità di \0 (che dovrebbe essere il terminatore di stringa).
Proseguendo ottengo sul browser come output i vari messaggi di posta, ma nel mezzo ottengo anche dei rombi con un ? all'interno (penso in corrispondeza del caratttere \0).
Body: ����������....���� Date:Wed, 6 May 2009 14:01:16 +0200 ����������....���� e cosi via

Questo problema a cosa puo' essere dovuto? Ho forse tralasciato qualche impostazione nell'ASCIIencoder per trasformare byte[] in string e viceversa? Eventualmente sapreste suggerirmi qualche riga di codice che non crei questo problema come alternativa?

Grazie in anticipo!
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-2023
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5