2014-10-12 2 views
0

Im new to JSON 그래서 그것에 대해 질문이 있습니다.이미지 가져 오기 JSON 외부 URL

이미지 JSON 객체를 JSONObject 정보로 가져오고 싶습니다. 하지만 가장 좋은 방법은 무엇일까요? 내가 지금까지했던 어떤

{ 
    "status" : "done", 
    "info" : { 
     "rating" : { 
      "imdb" : [5.7000000000000002, 129331] 
     }, 
     "genres" : ["Action", "Crime", "Thriller"], 
     "tmdb_id" : 584, 
     "plot" : "It's a major double-cross when former police officer Brian O'Conner teams up with his ex-con buddy Roman Pearce to transport a shipment of \"dirty\" money for shady Miami-based import-export dealer Carter Verone. But the guys are actually working with undercover agent Monica Fuentes to bring Verone down.", 
     "tagline" : "How Fast Do You Want It?", 
     "original_title" : "2 Fast 2 Furious", 
     "actor_roles" : { 
      "Mark Boone Junior" : "Detective Whitworth", 
      "Amaury Nolasco" : "Orange Julius", 
      "Edward Finlay" : "Agent Dunn", 
      "Cole Hauser" : "Carter Verone", 
      "Ludacris" : "Tej", 
      "Devon Aoki" : "Suki", 
      "James Remar" : "Agent Markham", 
      "Jin Auyeung" : "Jimmy", 
      "Eric Etebari" : "Darden", 
      "Paul Walker" : "Brian O'Conner", 
      "Mo Gallini" : "Enrique", 
      "Eva Mendes" : "Monica Fuentes", 
      "Tyrese Gibson" : "Roman Pearce", 
      "Thom Barry" : "Agent Bilkins", 
      "Michael Ealy" : "Slap Jack" 
     }, 
     "collection" : "The Fast and the Furious Collection", 
     "via_imdb" : true, 
     "mpaa" : "PG-13", 
     "via_tmdb" : true, 
     "directors" : ["John Singleton"], 
     "titles" : ["2 Fast 2 Furious", "The Fast and the Furious 2", "M\u00e1s r\u00e1pido, m\u00e1s furioso", "\u73a9\u547d\u95dc\u982d2 \u98c6\u98a8\u518d\u8d77", "Fast and the Furious Vol2", "The Fast and the Furious 2 - 2 Fast 2 Furious", "+ Veloses + Furiosos", "Rapide et dangereux 2", "Fast & Furious 2", "Fast and Furious 2", "\ubd84\ub178\uc758 \uc9c8\uc8fc 2"], 
     "imdb" : "tt0322259", 
     "year" : 2003, 
     "images" : { 
      "disc_art" : ["http://assets.fanart.tv/fanart/movies/584/moviedisc/2-fast-2-furious-520e18cde06ab.png"], 
      "poster" : ["https://image.tmdb.org/t/p/w154/3CrNPUulPGbsJIH2ZnLYomGIVrk.jpg", "http://ia.media-imdb.com/images/M/MV5BMTIyMDUwMDc4OF5BMl5BanBnXkFtZTYwNTY2Nzk5._V1_.jpg", "http://ia.media-imdb.com/images/M/MV5BMTIyMDUwMDc4OF5BMl5BanBnXkFtZTYwNTY2Nzk5._V1_SX300.jpg"], 
      "extra_thumbs" : ["https://image.tmdb.org/t/p/original/xvNOnVYmtkevs1kby3X1rQXb2iU.jpg", "https://image.tmdb.org/t/p/original/911LypVOfeIYCVmpFWJW0NpjIXG.jpg", "https://image.tmdb.org/t/p/original/7Zc0ubgNke1pGKyQjews7yMD0Jb.jpg", "https://image.tmdb.org/t/p/original/yIg8L8J7UFfKGCtoWDH7QTevs6C.jpg"], 
      "poster_original" : ["https://image.tmdb.org/t/p/original/3CrNPUulPGbsJIH2ZnLYomGIVrk.jpg"], 
      "landscape" : ["http://assets.fanart.tv/fanart/movies/584/moviethumb/2-fast-2-furious-51ab110bb72f4.jpg"], 
      "actors" : { 
       "Mark Boone Junior" : "https://image.tmdb.org/t/p/w185/nNVvaTLa8A5uwLXQvCsKoX4npwo.jpg", 
       "Amaury Nolasco" : "https://image.tmdb.org/t/p/w185/tFH2iQmCIARuPJwjqcw7STwLeEr.jpg", 
       "Edward Finlay" : "https://image.tmdb.org/t/p/w185/cHgCOdSLSvjYiKwhycwCH5X4Viu.jpg", 
       "Cole Hauser" : "https://image.tmdb.org/t/p/w185/2izzcOrZpt22ObHjSNq3qRhrGHu.jpg", 
       "Ludacris" : "https://image.tmdb.org/t/p/w185/xLfq9wFO6dtYuUK96hbJ8I8EKFw.jpg", 
       "Jin Auyeung" : "https://image.tmdb.org/t/p/w185/kQIGxSJSAcc3zK37zRCGuhxdNmL.jpg", 
       "James Remar" : "https://image.tmdb.org/t/p/w185/AeSuQlBclvWqztlpkf9nIhvvhsc.jpg", 
       "Devon Aoki" : "https://image.tmdb.org/t/p/w185/mytZpvb5lykocoOCDelFy8Eqezm.jpg", 
       "Eric Etebari" : "https://image.tmdb.org/t/p/w185/bNjZk4EPaItye1szWPkse08TSJZ.jpg", 
       "Paul Walker" : "https://image.tmdb.org/t/p/w185/iqvYezRoEY5k8wnlfHriHQfl5dX.jpg", 
       "Mo Gallini" : "https://image.tmdb.org/t/p/w185/fkc5N30a7ZvZkCJEnnqh24uQwDN.jpg", 
       "Eva Mendes" : "https://image.tmdb.org/t/p/w185/6JoVMpn0CcZwb6JK7XW2E6ntU52.jpg", 
       "Tyrese Gibson" : "https://image.tmdb.org/t/p/w185/8AaJIsIb7yJcfwcgbD7qsT6ameq.jpg", 
       "Thom Barry" : "https://image.tmdb.org/t/p/w185/AhUa78UoZ5oGk5kWiatnDaPxSnO.jpg", 
       "Michael Ealy" : "https://image.tmdb.org/t/p/w185/oqzMgyxyZUjE8kTpjHhQ6YlMPov.jpg" 
      }, 
      "backdrop_original" : ["http://assets.fanart.tv/fanart/movies/584/moviebackground/2-fast-2-furious-50472dee97d56.jpg", "https://image.tmdb.org/t/p/original/8RkLHFm2PK4PO5W0WZA5LMXLZBz.jpg"], 
      "clear_art" : ["http://assets.fanart.tv/fanart/movies/584/movieart/2-fast-2-furious-505432e6599e6.png"], 
      "logo" : ["http://assets.fanart.tv/fanart/movies/584/movielogo/2-fast-2-furious-4fb3fa6854a36.png"], 
      "banner" : ["http://assets.fanart.tv/fanart/movies/584/moviebanner/2-fast-2-furious-51ab1119963b1.jpg"], 
      "backdrop" : ["https://image.tmdb.org/t/p/w1280/8RkLHFm2PK4PO5W0WZA5LMXLZBz.jpg"], 
      "extra_fanart" : ["http://assets.fanart.tv/fanart/movies/584/moviebackground/2-fast-2-furious-50472e91d86ce.jpg", "http://assets.fanart.tv/fanart/movies/584/moviebackground/2-fast-2-furious-504ea84f0d19d.jpg", "http://assets.fanart.tv/fanart/movies/584/moviebackground/2-fast-2-furious-504ea84f0db42.jpg", "http://assets.fanart.tv/fanart/movies/584/moviebackground/2-fast-2-furious-5057078be2e3f.jpg"] 
     }, 
     "actors" : ["Paul Walker", "Tyrese Gibson", "Eva Mendes", "Cole Hauser"], 
     "writers" : ["Gary Scott Thompson (characters)", "Michael Brandt (story)", "Derek Haas (story)", "Gary Scott Thompson (story)", "Michael Brandt (screenplay)", "Derek Haas (screenplay)"], 
     "runtime" : 107, 
     "type" : "movie", 
     "released" : "2003-06-02" 
    }, 
    "_t" : "media", 
    "releases" : [{ 
      "status" : "done", 
      "files" : { 
       "movie" : ["/volume1/video/2 Fast 2 Furious (2003).mkv"] 
      }, 
      "_id" : "fbb7d7f6fb71458886edd115d58c3b96", 
      "media_id" : "e9376ee00c85449ba776be784da40552", 
      "_rev" : "000254f4", 
      "_t" : "release", 
      "is_3d" : false, 
      "last_edit" : 1404427546, 
      "identifier" : "tt0322259.AAC.dvdrip", 
      "quality" : "dvdrip" 
     } 
    ], 
    "title" : "2 Fast 2 Furious", 
    "_rev" : "00045be8", 
    "profile_id" : null, 
    "_id" : "e9376ee00c85449ba776be784da40552", 
    "category_id" : null, 
    "type" : "movie", 
    "files" : { 
     "image_poster" : ["/usr/local/couchpotato/var/cache/47c2f59d078bc8179ee52dd882a352ca.jpg"] 
    }, 
    "identifiers" : { 
     "imdb" : "tt0322259" 
    } 
} 

은 다음과 같습니다 :

String json = download(url); 

    try { 
     JSONObject result = new JSONObject(json); 
     JSONArray results = result.getJSONArray("movies"); 

     for(int i = 0; i < results.length(); i++) 
     { 
      JSONObject movieObject = results.getJSONObject(i); 
      CouchPotatoMovie movie = new CouchPotatoMovie(movieObject); 
      movies.add(movie); 
     } 

그래서 이미지가 CouchPotatoMovie 개체에 있어야

내가 요청을받을

다시 JSON과 나는이있어. 그러나 그들을 거기에서 내쫓을 방법이 확실하지 않습니다.

JSONObject jsonObject = new JSONObject(jsonString); 

getJSONObject() 방법을 사용합니다 :

+0

당신이 찾을하고자하는 이미지에 대한보다 정확한 될 수 있을까? – Pshemo

+0

포스터, extra_thimbs, poster_original 및 landscape에서 URL을 가져오고 싶습니다. 그러나 그들을 얻는 방법을 모르겠다 – Timmeeh93

+0

@ Timmeeh93'> result.getJSONArray ("movies")'. 게시 한 JSON에는 ** 영화 **라는 키가 없습니다. – fardjad

답변

0

json으로 문자열에서 된 JSONObject 만들기 다음

JSONObject imagesJsonObject = jsonObject.getJSONObject("info").getJSONObject("images"); 

을, 당신은 keys()를 사용하여 키를 얻을 얻을 getJSONArray()getString() 방법을 사용할 수 있습니다 이미지 URL


예 :

poster에서 URL을 얻으려면 :

JSONArray posterJsonArray = imagesJsonObject.getJSONArray("poster"); 
List<String> urls = new ArrayList<String>(); 
for (int i = 0; i < posterJsonArray.length(); i++) { 
    String url = posterJsonArray.getString(i); 
    urls.add(url); 
} 
+0

@Pshhemo, 네, 미안 해요, 그래서 그것을 사용하는 방법을 완전히 모르겠어 stackoverflow에 새로운. 하지만 위의 게시물을 편집했습니다. – Timmeeh93

+0

고마워요! :) – Timmeeh93

관련 문제