example ejemplo code c# .net string httpwebresponse

ejemplo - httpwebresponse c# example



Cómo convertir WebResponse.GetResponseStream return en una cadena? (5)

Veo muchos ejemplos, pero todos los leen en matrices de bytes o 256 caracteres a la vez, lentamente. ¿Por qué?

¿No es recomendable convertir el valor de Stream resultante en una cadena donde puedo analizarlo?


Como @Heinzi mencionó, se debe usar el conjunto de caracteres de la respuesta.

var encoding = response.CharacterSet == "" ? Encoding.UTF8 : Encoding.GetEncoding(response.CharacterSet); using (var stream = response.GetResponseStream()) { var reader = new StreamReader(stream, encoding); var responseString = reader.ReadToEnd(); }


Debe crear un StreamReader alrededor de la transmisión y luego llamar a ReadToEnd .

Debería considerar llamar a WebClient.DownloadString lugar.


Puede crear un StreamReader alrededor de la transmisión y luego llamar a StreamReader.ReadToEnd() .

StreamReader responseReader = new StreamReader(request.GetResponse().GetResponseStream()); var responseData = responseReader.ReadToEnd();


Puede usar StreamReader.ReadToEnd() ,

using (Stream stream = response.GetResponseStream()) { StreamReader reader = new StreamReader(stream, Encoding.UTF8); String responseString = reader.ReadToEnd(); }


Richard Schneider tiene razón. use el código a continuación para obtener datos del sitio que no sea utf8 charset obtendrá la cadena incorrecta.

using (Stream stream = response.GetResponseStream()) { StreamReader reader = new StreamReader(stream, Encoding.UTF8); String responseString = reader.ReadToEnd(); }

"No puedo votar. Así escribí esto.