1

JSONオブジェクトで応答を返すすべてのデータベース関数を制御するPHP Webサービスがあります。ヘブライ語のテキストを使用しているため、すべてをUTF-8にエンコードしていますが、ヘブライ語のテキストはすべてスペースを失います..

これは、Android での私の http 応答コードです。

private JSONObject getApiResponse(HttpResponse response) throws Exception
{
    //get response status line
    StatusLine statusLine = response.getStatusLine();
    //if statue line is ok - read the response and return it
    if (statusLine.getStatusCode() == HttpStatus.SC_OK) {
        HttpEntity entity = response.getEntity();
        ByteArrayOutputStream out = new ByteArrayOutputStream();
        entity.writeTo(out);
        out.close();                
        return new JSONObject(new String(out.toString().getBytes(),"UTF-8"));
    }
    return null;
}

これは、php の場合の私の応答のエコーです。

    $api = new api();
    echo "<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">";
    echo utf8_encode($api -> processRequest()); //processRequest() always returns JSON object
  • すべてのデータ テーブルは UTF 8 です
  • PHP mysqli は UTF 8 に設定されています

これは、サービスからの応答の例です。

{"events":[
{"Event_Code":"10212208",
 "Event_Name":"\u05de\u05e1\u05d9\u05d1\u05ea \u05e9\u05e9        
               \u05e9\u05e0\u05d9\u05dd                             
               \u05dc\u05d1\u05d0\u05e8\u05e7\u05d9",
  "Place":"\u05d4\u05e2\u05e6\u05de\u05d0\u05d5\u05ea 84 \u05d7\u05d9\u05e4\u05d4",
  "Start_Time":"2013-08-22 21:00:00",
  "End_Time":"2013-08-23  05:00:00",
  "Facebook_Id":"741688125",
   "User_Name":"Name"}]}

何か案が ??

4

1 に答える 1

0

わかりました解決策を見つけました:

Marc B のコメントを読んだ後、自分のコードを再調査したところ、テキスト ビューの 1 つが、事前に設定された英語の単語とヘブライ語の Web サービスの応答を組み合わせていることがわかりました。

これにより、何らかの理由でビューが破損しました...

于 2013-08-06T15:17:24.310 に答える