我正在使用MonoDevelop for Android,并希望能够从互联网上下载文本文件并将其存储在字符串中。
这是我的代码:
try
{
URL url = new URL("mysite.com/thefile.txt");
BufferedReader in = new BufferedReader(new InputStreamReader(url.openStream()));
String str;
while ((str = in.readLine()) != null)
{
// str is one line of text; readLine() strips the newline character(s)
}
in.close();
}
catch (MalformedURLException e)
{
} catch (IOException e)
{
}
我收到以下错误:
无效的表达式术语'in';
我可以帮助您使用此代码。如果有一种更简单的方法从WWW下载文本文件并将内容保存到字符串中,请给我一些帮助来实现它。
提前致谢。
答案 0 :(得分:1)
以下是我们用于下载网站项目的用户代码。
只需将此函数传递给您的URI,您将返回包含整个网站的BufferedReader。
public static BufferedReader openConnection(URI uri) throws URISyntaxException, ClientProtocolException, IOException {
HttpGet http = new HttpGet(uri);
HttpClient client = new DefaultHttpClient();
HttpResponse resp = (HttpResponse) client.execute(http);
HttpEntity entity = resp.getEntity();
InputStreamReader isr = new InputStreamReader(entity.getContent());
BufferedReader br = new BufferedReader(isr, DNLD_BUFF_SIZE);
return br;
}
你可以通过以下方式制作uri:
try{
try{
URI uri = new URI("mysite.com/thefile.txt");
catch (Exception e){} //Should never occur
BufferedReader in = openConnection(uri);
String str;
while ((str = in.readLine()) != null)
{
// str is one line of text; readLine() strips the newline character(s)
}
in.close();
}
catch (Exception e){
e.printStackTrace();
}
这应该可以帮助您下载网站。