I want to parse a JSON from a url that is inside <HTML> tags in android using JsonReader. I have tried multiple examples on Stackoverflow and Androud reference, but i keep getting org.json.JSONException: Value <!DOCTYPE error or null pointer exception
This is the URL that i want to parse: Link
This is the code i have using this example: How to parse JSON in Android
I am getting nullpointexception on getData class
JSON Parser class:
public class JSONParser
{
public String json = "";
public InputStream is = null;
public JSONObject jObj = null;
public JSONObject getJSON(String url)
{
try
{
DefaultHttpClient httpClient = new DefaultHttpClient();
HttpPost httpPost = new HttpPost(url);
HttpResponse httpResponse = httpClient.execute(httpPost);
HttpEntity httpEntity = httpResponse.getEntity();
is = httpEntity.getContent();
} catch (ClientProtocolException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
try {
BufferedReader reader = new BufferedReader(new InputStreamReader(
is, "iso-8859-1"), 8);
StringBuilder sb = new StringBuilder();
String line = null;
while ((line = reader.readLine()) != null) {
sb.append(line + "\n");
}
is.close();
json = sb.toString();
} catch (Exception e) {
e.printStackTrace();
}
// try parse the string to a JSON object
try {
jObj = new JSONObject(json);
} catch (JSONException e) {
e.printStackTrace();
}
// return JSON String
return jObj;
}
MapsActivity:
private void setUpMap()
{
new getData().execute();
}
class getData extends AsyncTask<String, String, String>
{
@Override
protected String doInBackground(String... params)
{
JSONParser jsonParser = new JSONParser();
JSONObject json = jsonParser.getJSON(url);
try
{
String id = json.getString("ID");
String name = json.getString("Name");
long lat = json.getLong("Lat");
long lng = json.getLong("Long");
String sms = json.getString("Sms");
}
catch (JSONException e)
{
e.printStackTrace();
}
return null;
}
}
JSON Parseronly reads values which are inJSONformat otherwise it throws an error.. if you are getting HTML tags in response it means that there is some warning or error in your .php page.. first you have to solve this and after that it will gives you response intoJSONformat