获取响应流将其转换为ASCII

时间:2012-09-21 11:21:14

标签: c# c#-4.0

此代码段正在向SMS网关发送一些值。然后SMS网关为我们提供了一些值。我需要捕获该值并将其写入文件。

当我发送短信时,会显示以下值:

  

b6c56c74-03b0-11e2-b28c-00145e7e986e

WebRequest request = WebRequest.Create(
    "http://base.mygateway.com/api/mt?msisdn=" + mobileNo
    + "&body=" + msgOut
    + "&sender=" + shortcode
    + "&key=abcdefghi&product_id=10023&operator="
    + oppp + "&country=UnitedStates");
WebResponse response = request.GetResponse();
byte[] ary = new byte[1000];
response.GetResponseStream().Read(ary, 0, (int) response.ContentLength);

我想转换为来自GetResponseStream()的ASCII值。我不知道该怎么做。在上面的代码中我取​​值......如何转换它们?

2 个答案:

答案 0 :(得分:2)

使用Encoding类将byte[]转换为所需的编码。

Encoding.ASCII.GetString(ary);

您需要确保从WebRequest返回的值也已正确编码。为此,您可能希望使用WebClient,因为它具有Encoding属性。

答案 1 :(得分:0)

var content = new StreamReader(response.GetResponseStream(),Encoding.UTF8)
                 .ReadToEnd();