Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

JSON exception: org.json.JSONException: Unterminated array

Tags:

java

json

android

I'm working on an android app - which requests some data from server and the server returns data in JSON format. Everything works fine, except an API. After debugging, I've found this Exception:

org.json.JSONException: Unterminated array at character 152 of

{
    "total": "2",
    "result": [
        {
            "id": "15",
            "ename": "Horror movies based on true stories",
            "vname": "Những phim kinh dị dựa trên chuyện có thật",
            "movies": "16"
        }{
            "id": "14",
            "ename": "IMDB Top 250",
            "vname": "250 bộ phim hay nhất mọi thời đại",
            "movies": "127"
        }{
            "id": "13",
            "ename": "10 good movies for women",
            "vname": "10 bộ phim hay dành cho phái đẹp",
            "movies": "10"
        }{
            "id": "12",
            "ename": "The 84th Annual Academy Awards",
            "vname": "Giải Oscars lần thứ 84 (2012)",
            "movies": "37"
        }{
            "id": "11",
            "ename": "Charlie Chaplin collection",
            "vname": "Tuyển tập hề Sác lô",
            "movies": "7"
        }{
            "id": "10",
            "ename": "Tuyển tập điệp viên 007",
            "vname": "007 collection",
            "movies": "23"
        }{
            "id": "9",
            "ename": "Donnie Yen movies collection",
            "vname": "Tuyển tập phim Chung Tử Đơn",
            "movies": "24"
        }{
            "id": "8",
            "ename": "Back to the Future trilogy",
            "vname": "Tuyển tập "Trởlạitươnglai"",
            "movies": "3"
        }{
            "id": "7",
            "ename": "Stieg Larssons Millennium trilogy",
            "vname": "Bộ tiểu thuyết Millenium của nhà văn Stieg Larsson",
            "movies": "3"
        }{
            "id": "6",
            "ename": "Chan Wook Parks vengeance trilogy",
            "vname": "Bộ ba phim Báo thù của đạo diễn Park Chan Wook",
            "movies": "3"
        }
    ]
}

I've searched in internet, but no luck. And I also count to character 152th, but nothing wrong ! Please help me !

like image 713
hungson175 Avatar asked Nov 29 '22 02:11

hungson175


2 Answers

I see something wrong:

The elements in the array should be separated with commas:

{
    "total":"2",
    "result":  [
        {
            "id":"15",
            "ename":"Horror movies based on true stories",
            "vname":"Nh?ng phim kinh d? du?a tren chuye?n co? tha?t",
            "movies":"16"
        }**,COMMA**
        {
            "id":"14",
            "ename":"IMDB Top 250","vname":"250 b? phim hay nh?t m?i th?i d?i",
            "movies":"127"
        }
    ]
}

Note that I placed the string COMMA just to underline the place. You need to add only , without COMMA.

like image 107
Boris Strandjev Avatar answered Dec 04 '22 16:12

Boris Strandjev


When you want to use quotes in your json you must must use escaped quotes. Like this:

[{"vname": "Tuyển tập \"Trởlạitươnglai\""}]
like image 35
UGD Avatar answered Dec 04 '22 17:12

UGD