如何将.txt文件从网站加载到android textview?
我只是想知道如何将.txt文件从网站加载到我们在线连接的android应用程序 我只是想使用internet将在线应用程序中的文本加载到文本视图中,有没有最好的方法可以做到这一点 由于我对android非常陌生,所以我已经通过了很多关于堆栈溢出的教程和问题,但对我来说并不适用如何将.txt文件从网站加载到android textview?,android,web,Android,Web,我只是想知道如何将.txt文件从网站加载到我们在线连接的android应用程序 我只是想使用internet将在线应用程序中的文本加载到文本视图中,有没有最好的方法可以做到这一点 由于我对android非常陌生,所以我已经通过了很多关于堆栈溢出的教程和问题,但对我来说并不适用 提前谢谢 将此异步任务嵌入要显示文本的活动中: private class LoadTextFileTask extends AsyncTask<String, Void, String> { priv
提前谢谢 将此异步任务嵌入要显示文本的活动中:
private class LoadTextFileTask extends AsyncTask<String, Void, String> {
private TextView txtView;
public LoadTextFileTask(TextView txtView) {
this.txtView = txtView;
}
protected String doInBackground(String... urls) {
String url = urls[0];
Log.d(TAG, "fetching: " + url);
try {
URL obj = new URL(url);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
con.setRequestProperty("User-Agent", "Mozilla/5.0");
if (con.getResponseCode() != 200)
throw new IOException();
BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null)
response.append(inputLine);
in.close();
return response.toString();
} catch (IOException e) {
e.printStackTrace();
Log.e(TAG, "error downloading file", e);
}
return null;
}
protected void onPostExecute(String text) {
if (text != null) {
txtView.setText(text);
}
}
}
将此异步任务嵌入要显示文本的活动中:
private class LoadTextFileTask extends AsyncTask<String, Void, String> {
private TextView txtView;
public LoadTextFileTask(TextView txtView) {
this.txtView = txtView;
}
protected String doInBackground(String... urls) {
String url = urls[0];
Log.d(TAG, "fetching: " + url);
try {
URL obj = new URL(url);
HttpURLConnection con = (HttpURLConnection) obj.openConnection();
con.setRequestMethod("GET");
con.setRequestProperty("User-Agent", "Mozilla/5.0");
if (con.getResponseCode() != 200)
throw new IOException();
BufferedReader in = new BufferedReader(new InputStreamReader(con.getInputStream()));
String inputLine;
StringBuffer response = new StringBuffer();
while ((inputLine = in.readLine()) != null)
response.append(inputLine);
in.close();
return response.toString();
} catch (IOException e) {
e.printStackTrace();
Log.e(TAG, "error downloading file", e);
}
return null;
}
protected void onPostExecute(String text) {
if (text != null) {
txtView.setText(text);
}
}
}
你可以使用谷歌提供和建议的截击库。 Gradle dependency'com.mcxiaoke.volley:library:1.0.10'
希望能有帮助 你可以使用谷歌提供和建议的截击库。 Gradle dependency'com.mcxiaoke.volley:library:1.0.10'
希望能有帮助 查看。查看的副本。查看的副本。良好的副本,尽管似乎没有必要使用StringBuffer而不是StringBuilder,因为它的任何给定实例仅由一个线程使用。良好,尽管似乎没有必要使用StringBuffer而不是StringBuilder,因为它的任何给定实例只被一个线程使用。
String url = "your_txt_file_url";
StringRequest request = new StringRequest(url, new Response.Listener<String>() {
@Override
public void onResponse(String response) {
//response is what you want :)
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
//Error occurred
}
});
RequestQueue queue = Volley.newRequestQueue(this);
queue.add(request);