【发布时间】:2014-01-26 22:08:08
【问题描述】:
我有一个使用流阅读器从流中读取的字符串。这是在 WEB API 调用并从请求中获取响应之后。对于清晰的视图,这是我的代码。
HttpWebRequest request = (HttpWebRequest)WebRequest.Create("SOME URL");
HttpWebResponse response = (HttpWebResponse)request.GetResponse();
Stream resStream = response.GetResponseStream();
StreamReader reader = new StreamReader(resStream);
string s = reader.ReadToEnd();
resStream.Flush();
resStream.Close();
reader.Close();
我的字符串有一个值“value1=somestring1&value2=somestring2”。我想得到 somestring1 和 somestring2。我认为有更好的方法可以做到这一点,而不是将整个流转换为字符串来获取每个值。你有什么想法?谢谢!
【问题讨论】:
-
您希望这在同一行吗?然后您可以逐行阅读,直到找到它们为止。
-
我不太确定。这来自 facebook API。
-
实际上,您需要从流中读取数据才能使用它,因此将其读入字符串然后拆分它对我来说似乎是正确的选择。我建议使用由 & 字符分隔的
var parts = s.Split(new char[] { '&' });。之后,您可以通过 = 字符再次拆分。 -
我曾考虑过这样做,但我也认为有更好的方法来做到这一点而无需做太多工作。
-
如果流有换行符,您可以读取每一行并对其进行处理。否则,您一次只能使用一个字符或整个流。