2010-05-27 32 views
55

Tôi cần giải mã các thực thể HTML, ví dụ: từ & # 246; đến ö và & amp; đến &.Giải mã các thực thể HTML trong android

URLEncoder.decode(str) không thực hiện công việc (chuyển đổi từ% ký hiệu). TextUtils có mã HTML, nhưng không có mã HTML.

Có chức năng nào để giải mã các thực thể HTML không?

+0

http://stackoverflow.com/a/4882425/1224741 – QED

+0

xem câu trả lời http://stackoverflow.com/questions/6138127/how-to-do-url-decoding-in-java – marius

Trả lời

99

Html class là nghĩa vụ phải làm điều đó, tuy nhiên người ta nói rằng mọi thứ không được hỗ trợ. Nó luôn luôn làm việc cho tôi nhưng tôi không bao giờ có ö vì vậy tôi không thể nói cho điều này. Hãy thử Html.fromHtml(yourStr) để nhận chuỗi được giải mã.

+28

Và đây là soo chậm phát triển kể từ khi tôi phải làm điều này như 'Html.fromHtml (Html.fromHtml ((String) cơ thể) .toString());' Tại sao họ không thể chỉ cần thêm Html.decode? – Bostone

+3

Dường như trong API cấp 16 họ đã thêm 'Html.escapeHtml' – sFuller

+0

Cảm ơn !!! Nó làm việc cho tôi ... @Bostone –

7

Đơn giản chỉ cần bạn có thể làm điều đó sử dụng mã này

Html.fromHtml(String).toString(); 

Hy vọng điều này sẽ giúp bạn

+0

Cho tôi biết kết quả của bạn – saeed

11

Html.fromHtml (String html) là phản sau v24 API vì vậy đây là cách chính xác để làm it

if (Build.VERSION.SDK_INT >= 24) 
    { 
     textView.setText(Html.fromHtml(htmlString , Html.FROM_HTML_MODE_LEGACY))); 
    } 
    else 
    { 
     textView.setText(Html.fromHtml(htmlString)); 
    } 
0

Bạn có thể xóa char đặc biệt khỏi chuỗi bằng cách gọi

responsestring.replace(“special char here”, “”); 

bạn có thể chuyển đổi phản ứng thành một chuỗi từ htmlstring như thế - Html.fromHtml (phản ứng chuỗi đây) Nhưng phương pháp này được khấu hao theo API 24 vì vậy bạn cần phải làm điều đó trong một gì theo cách đúng

if (Build.VERSION.SDK_INT >= 24) 
{ 
    post_description.setText(Html.fromHtml(response here , Html.FROM_HTML_MODE_LEGACY)); 
} 
else 
{ 
    post_description.setText(Html.fromHtml(response here)); 
} 
Các vấn đề liên quan