java - Data retrieved from web service cannot be displayed due to special characters -
i'm trying display field out url field displayed point special characters come in. example, data is:
what social summit about?</strong><p> <p>the social summit worldwide bringing social enterprises , charities technology , social media companies explore how tackle of world's biggest difficulties.
but when displayed, display:
what social summit about?
i tried using spannablestringbuilder still don't work. sample code:
public class androidxmlparsingactivity extends listactivity { static final string url = "http://api.eventful.com/rest/events/search?app_key=42t54cx7rbrdfczc&location=singapore"; // xml node keys static final string key_event = "event"; // parent node static final string key_title = "title"; static final string key_url = "url"; static final string key_desc = "description"; static final string key_start_time = "start_time"; static final string key_stop_time = "stop_time"; static final string key_venue_name = "venue_name"; static final string key_country_name = "country_name"; string regex = "</{0,1}.+?>"; string replacement = ""; @override public void oncreate(bundle savedinstancestate) { super.oncreate(savedinstancestate); setcontentview(r.layout.main); final arraylist<hashmap<string, string>> menuitems = new arraylist<hashmap<string, string>>(); xmlparser parser = new xmlparser(); string xml = parser.getxmlfromurl(url); // getting xml document doc = parser.getdomelement(xml); // getting dom element nodelist nl = doc.getelementsbytagname(key_event); // looping through item nodes <item> (int = 0; < nl.getlength(); i++) { // creating new hashmap hashmap<string, string> map = new hashmap<string, string>(); element e = (element) nl.item(i); // adding each child node hashmap key => value map.put(key_title, parser.getvalue(e, key_title)); map.put(key_url, parser.getvalue(e, key_url)); map.put(key_desc, "description: " + parser.getvalue(e, key_desc)); map.put(key_start_time, parser.getvalue(e, key_start_time)); map.put(key_stop_time, parser.getvalue(e, key_stop_time)); map.put(key_venue_name, parser.getvalue(e, key_venue_name)); map.put(key_country_name, parser.getvalue(e, key_country_name)); // adding hashlist arraylist menuitems.add(map); } // adding menuitems listview listadapter adapter = new simpleadapter(this, menuitems, r.layout.list_item, new string[] { key_title, key_country_name, key_venue_name, key_start_time }, new int[] { r.id.title, r.id.countryname, r.id.venuename, r.id.starttime }); spannablestringbuilder stringbuilder = new spannablestringbuilder(); stringbuilder.append(key_desc); textview contentview = (textview) findviewbyid(r.id.description); contentview.settext(stringbuilder);
try using html.fromhtml(string source) method:
public static spanned fromhtml (string source)
provide string mentioned above..
Comments
Post a Comment