1

InputStreamReader結果を読み取ると「\」がなくなり、文字列に「n」が残るJSONサービスがあります。

「\n」を次の行に変換して TextArea に表示するのに問題があります。

例えば:

Service Result: Hello\nWorld
PassThrough InputStreamReader: HellonWorld
TextArea Output: HellonWorld

私はそれが必要です:

Service Result: Hello\nWorld
PassThrough InputStreamReader: Hello
World
TextArea Output: Hello
World

この問題を解決する方法を教えてください。

私は LWUIT を使用しており、J2ME デバイス向けに開発しています。

4

2 に答える 2

1

これはこれを行う最良の方法ではありませんが、次のとおりです。

次の行を JSONParser.java に追加します。

else if (c == 'n') {
    c = '\n';
}

c = (char) i.read();
if (c == 'u') {
    String unicode = "" + ((char) i.read()) + ((char) i.read()) + ((char) i.read()) + ((char) i.read());
    try {
        c = (char) Integer.parseInt(unicode, 16);
    } catch (NumberFormatException err) {
        // problem in parsing the u notation!
        err.printStackTrace();
        System.out.println("Error in parsing \\u" + unicode);
    }
}
于 2011-11-25T04:05:22.527 に答える
0

返された正確なJSON文字列を貼り付けることができますか。データが二重引用符で囲まれている場合は、表記"のデコードを除いて、データを変更しないでください。\u

于 2011-11-24T10:19:17.677 に答える