1

webviewに色、スパン、フォントなどを表示したいので、データはphp webserviceから取得されます。データの解析に問題があるため、UTF-8形式を使用してエンコードします。データの解析に成功し、データベースに挿入します。しかし、ここでの問題は、そのデータをWebビューで表示したい場合、そのデータに。"&lt;span style=\&quot;color:#ff0000;\&quot;&gt;"を意味するような特殊文字が含まれていること<span color="#ff0000"/>"です。だからここで私はそれをデコードして結果を""の形式にしたい。

ただ欲しい String str = "&lt;span style=\&quot;color:#ff0000;\&quot;gt;";

 public String  decodeMethodUtf(Str)
          {
             //do some coding and decode
                return str;
          }

どんな助けでも大歓迎です。

4

4 に答える 4

5

多分これはあなたが望むものです

Html.fromHtml("YOUR TXT").toString()
于 2013-08-07T01:57:02.433 に答える
4

実際、Androidは、すべての特殊文字をデコードして削除するための直接のクラスやメソッドを提供していません。これを見つけるためにWebで何時間も費やしているので、答えを見つけたら、その答えをあなたと共有したいと思います。これは、Androidにないorg.apache.commons.langクラスを使用して実行できます。したがって、最初にここからjarファイルをダウンロードする必要があります http://mvnrepository.com/artifact/commons-lang/commons-lang/2.3

jarファイルをダウンロードした後、そのファイルをプロジェクトに含めます。そして今、1行のコードがここにありますdecode_string = StringEscapeUtils.unescapeHtml(endoded_string); デコードされた文字列は、特殊文字を含まない最終的な文字列です。

于 2013-02-15T08:10:50.347 に答える
0

それが役に立てば幸い。

   public String decodeMethodUtf(Str)
   {
      return URLDecoder.decode(str, "UTF-8");
   }
于 2013-02-14T13:34:12.113 に答える
0

@DEVENDRAありがとうございます。あなたの投稿から、エンコードされた返されたJSON文字列をデコードすることができました

魔法はあなたの声明にありました:

String decoded_string = decdecodeMethodUtf(response);

==============================================

String path = Protocol.SERVER_URL + Protocol.kMyPhp  + "?userId=" + userId + "&firstLoad=" + isRefresh + "&taskId=" + taskId;

// Make call to .php file and get response from DB

String response = HttpApi.sendRequest(path, null, null);

if (response == null) return null;

// Decode the response to replace ASCII Encoding Reference with Special Characters

String decoded_string = decdecodeMethodUtf(response);
Log.e("", ""+decoded_string);
response = decoded_string;

Log.i("response", response);
return response;
于 2016-07-09T18:59:20.653 に答える