1

json でエラーに直面していますが、

System.out.println((int)text.trim().charAt(0));

は 123 を返します。これは、中かっこで始まることを意味します。私は完全にアイデアがtrim()なく、代わりにしようとしましたtoString()

InputStream bis = new ByteArrayInputStream(bytes);
InputStream is = new GZIPInputStream(bis);
byte[] unPackedBytes = IOUtils.toByteArray(is);
String text = new String(unPackedBytes, "UTF-8");
JSONObject obj = new JSONObject(text.toString());

jsonを入力してもエラーは発生しませんが、圧縮ファイルを指定するとエラーが発生しますが、圧縮ファイルの出力はjsonとまったく同じであるため、混乱しています。これがJsonです。

{
    "id": 123,
    "providerId": 123,
    "externalTrackId": "068d",
    "genres": [
        {
            "genre": "Rap/Hip-Hop",
            "subGenre": "Rap/Hip-Hop"
        }
    ],
    "title": {
        "title": "The "
    },
    "artists": [
        {
            "name": {
                "primary": {
                    "value": "J-"
                }
            },
            "role": "Artist"
        }
    ],
    "contributors": [],
    "release": {
        "id": 123,
        "title": {
            "title": "The "
        },
        "artist": {
            "primary": {
                "value": "J"
            }
        },
        "externalId": "gener2cec9477d",
        "genre": {
            "genre": "Rap/Hip-Hop",
            "subGenre": "Rap/Hip-Hop"
        },
        "copyrightYear": 0
    },
    "trackCountInMedia": 0,
    "mediaCountInRelease": 0,
    "signature": {
        "url": "https:",
        "id": 123,
        "type": "FULL",
        "audioType": "MUSIC",
        "creation": "2013-"
    },
    "label": "Unknown",
    "lastMod": "2013-01-04T16:02:57.607Z"
}

乾杯

4

1 に答える 1

0

私は自分の答えを見つけました.Base64からデータをデコードしていなかったので、それは私の間違いでした. まったく同じ出力のように見えたのに、そうではなかったので奇妙です。

私を助けてくれた@Jhanviに感謝します。

于 2013-10-28T08:59:53.273 に答える