2016-12-01 3 views
-1

JsonParse.Java Der Versuch, das JSON-Array-Objekt von der URL zu bekommen, aber es wirft Parsing ERROR
und CovertriedBean ist meine POJO-Klasse.
parse_json hat nur Listview und parse_json_view hat 4FEHLER: com.android.volley.ParseError: org.json.JSONException: Wert <! DOCTYPE vom Typ java.lang.String kann nicht in JSONObject konvertiert werden

der Textview Kann mir jemand bitte helfen Sie ................

private List<CountriesBean> cntries= new ArrayList<CountriesBean>(); 
     @Override 
     protected void onCreate(Bundle savedInstanceState) { 
      super.onCreate(savedInstanceState); 
      setContentView(R.layout.parse_json); 

      RequestQueue queues = Volley.newRequestQueue(JsonParse.this); 

      JsonObjectRequest myRequest = new JsonObjectRequest(Request.Method.GET, 
        "https://github.com/SaiNitesh/REST-Web-services/blob/master/RESTfulWS/json_file.json", 
        null, 
        new Response.Listener<JSONObject>() { 
         @Override 
         public void onResponse(JSONObject response) { 
          try{ 
           Log.i("myCountries**", "response:" +response); 
          JSONArray countryItems = response.getJSONArray("countryItems"); 

          Log.i("myTagx", "response:" +countryItems); 

           for(int i=0; i<countryItems.length();i++){ 
            JSONObject temp= countryItems.getJSONObject(i); 

            String nm = temp.getString("nm"); 
            String cty = temp.getString("cty"); 
            String hse = temp.getString("hse"); 
            String yrs = temp.getString("yrs"); 

            cntries.add(new CountriesBean(nm, cty, hse, yrs)); 
           } 
          } catch(JSONException e){ 
           Log.i("myTag",e.toString()); 
          } 
         } 
        }, new Response.ErrorListener(){ 
       @Override 
       public void onErrorResponse(VolleyError error){ 
        Log.i("myTag", "Error:"+error.toString()); 
       } 
      }); 

      queues.add(myRequest); 

      ArrayAdapter<CountriesBean> adapter=new customAdapter(); 

      ListView myFirstListView = (ListView) (findViewById(R.id.myCountriesView)); 
      myFirstListView.setAdapter(adapter); 


      myFirstListView.setOnItemClickListener(new AdapterView.OnItemClickListener(){ 
       //WebView myListViewbrowser = (WebView) findViewById(R.id.myListViewbrowser); 
       @Override 
       public void onItemClick(AdapterView<?> parent, View view, int position, long id) { 

        Toast.makeText(JsonParse.this,"My List View Item",Toast.LENGTH_SHORT).show(); 
       } 
      }); 


     } 

     private class customAdapter extends ArrayAdapter<CountriesBean>{ 
      public customAdapter() { 
       super(JsonParse.this, R.layout.parse_json_view, cntries); 

      } 

      @Override 
      public View getView(int position, View convertView, ViewGroup parent) { 

       /*getView method is like "for loop" 
       For First time convertView=null, then it gets 1st list, then it returns(return convertView) the first list, 
       then the convertView will be null 
       After that it starts from here again for 2nd list and it continues*/ 
       if(convertView == null){ 
        convertView = getLayoutInflater().inflate(R.layout.parse_json_view, parent,false); 

       } 


       TextView countryName = (TextView) convertView.findViewById(R.id.name); 
       TextView countryCity = (TextView) convertView.findViewById(R.id.city); 
       TextView countryHouse = (TextView) convertView.findViewById(R.id.house); 

       CountriesBean myCurrentctries = cntries.get(position); 


       countryName.setText(myCurrentctries.getNm()); 
       countryCity.setText(myCurrentctries.getCty()); 
       countryHouse.setText(myCurrentctries.getHse()); 

       return convertView; 
      } 


     } 
+0

Bitte Fehler melden auch –

Antwort

3

Die Antwort der URL https://github.com/SaiNitesh/REST-Web-services/blob/master/RESTfulWS/json_file.json ist eine HTML-Seite, also erhalten Sie diese Ausnahme.

Verwenden Sie stattdessen https://raw.githubusercontent.com/SaiNitesh/REST-Web-services/master/RESTfulWS/json_file.json.

+1

Vielen Dank ..... !! Es klappt. – Batman

+0

Wie wäre es, wenn ich das Bild wie JSON-Datei hochladen möchte? Wie kann ich es als Rohdaten zeigen? – Batman

+0

Ich denke, Sie sollten eine neue Frage für Ihre neue Anforderung erstellen, oder Sie können Faust in SO suchen, viele Links verfügbar (einer von ihnen ist http://StackOverflow.com/Questions/16797468/How-to-Senda- Multipart-Form-Daten-Post-in-Android-mit-Volley), aber Sie müssen auch klären, herunterladen oder hochladen – BNK

Verwandte Themen