首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >URLConnection空流

URLConnection空流
EN

Stack Overflow用户
提问于 2013-07-03 08:11:20
回答 2查看 3.1K关注 0票数 0

URLConnection流是空的

我正在使用Xamarin Studio 4.0.9并使用以下代码:

代码语言:javascript
复制
Stream lResult = null;

URLConnection lConn = new URL(url).OpenConnection();

lResult = lConn.InputStream;

return lResult;

要从这个url:http://maps.google.com/maps?f=d&hl=en&saddr=52.37,9.74&daddr=52.370100224,9.739360256&ie=UTF8&0&om=0&output=dragdir获得一个流,因为有几个缺点,它不再工作了,当我从它读取时,流是空的。有人知道为什么吗?

更新

我也试过这个:

代码语言:javascript
复制
Uri lUri=new Uri(url);

WebRequest request=(WebRequest) WebRequest.Create(lUri); 

request.Method="GET";

WebResponse response = (WebResponse)request.GetResponse();

lResult=response.GetResponseStream();

但是我得到了这个异常: System.Net.WebException错误获取响应流(写: EndWrite失败):SendFailure

注意事项

该应用程序是在Xamarin 4.0.9中使用c#编写的。

EN

回答 2

Stack Overflow用户

发布于 2013-07-03 08:18:08

让我们参考这个例子

代码语言:javascript
复制
URL url = new URL("http://maps.google.com/maps?f=d&hl=en&saddr=52.37,9.74&daddr=52.370100224,9.739360256&ie=UTF8&0&om=0&output=dragdir");
   HttpURLConnection urlConnection = (HttpURLConnection) url.openConnection();
   try {
     InputStream in = new BufferedInputStream(urlConnection.getInputStream());
     readStream(in);//call function to read a stream
    finally {
     urlConnection.disconnect();
   }
票数 0
EN

Stack Overflow用户

发布于 2013-07-03 08:43:28

这是我的功用课

代码语言:javascript
复制
 public class HttpConnection
    {
        public static string GetString(string url)
        {
            return GetString(url, Encoding.UTF8);
        }

        public static string GetString(string url, Encoding encode)
        {
            HttpWebRequest oReq = (HttpWebRequest)WebRequest.Create(url);
            oReq.UserAgent = @"Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.5) Gecko/20091102 Firefox/3.5.5";
            oReq.Method = "GET";
            ASCIIEncoding encoding = new ASCIIEncoding();
            HttpWebResponse resp = (HttpWebResponse)oReq.GetResponse();
            StreamReader loResponseStream = new StreamReader(resp.GetResponseStream(), encode);
            String s = loResponseStream.ReadToEnd();
            loResponseStream.Close();

            return s.Replace(" ", " ");
        }
}

让我们像这样调用函数HttpConnection.GetString(string )

代码语言:javascript
复制
HttpConnection.GetString("http://maps.google.com/maps?f=d&hl=en&saddr=52.37,9.74&daddr=52.370100224,9.739360256&ie=UTF8&0&om=0&output=dragdir")
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/17442869

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档