Я хочу получить данные из URL-адреса и отобразить их в textView, но после получения отображаются только HTML-коды.
Я использую обучающее видео, но мой результат неверен.
Iтоже использовал другие методы, но все результаты одинаковы и показывают только html-коды.
MainActivity:
public static final String SAMPLE_URL = "http://nimatest.epizy.com/ffff.json";
findViewById(R.id.btn_get_data).setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
new TaskGetData().execute(SAMPLE_URL);
}
});
public class TaskGetData extends AsyncTask<String , String , String>{
@Override
protected void onPreExecute() {
textView.append("Get data ...\n\n");
}
@Override
protected String doInBackground(String... params) {
return MyHttpUtils.getDataHttpUriConnection(params[0]);
}
@Override
protected void onPostExecute(String result) {
textView.append(result + "\n");
}
}
MyHttpUtils:
public static String getDataHttpUriConnection(String uri){
try {
URL url = new URL(uri);
HttpURLConnection con = (HttpURLConnection) url.openConnection();
String result = inputStreamToString(con.getInputStream());
return result;
} catch (IOException e) {
e.printStackTrace();
}
return null;
}
public static String inputStreamToString(InputStream stream) {
BufferedReader reader = new BufferedReader(new InputStreamReader(stream));
StringBuilder sb = new StringBuilder();
String line = "";
try
{
while ((line = reader.readLine()) != null)
{
sb.append(line);
sb.append("\n");
}
return sb.toString();
}
catch (IOException e)
{
e.printStackTrace();
}
return null;
}
