zobi8225
zobi8225

Reputation: 2268

Spécial HTML character ( & # 39; -> quot ) in XML file

I got an " & # 39; " in my XML file. (it is the char code for the quot in HTML)

EX :

< desc > blabla bla & # 39; bla bla la. < / desc>

When i parse it with String tmp = itemOfEvent.getFirstChild().getNodeValue() it cut my text juste before the quot.

I got a crash with URL.encode(tmp, "UTF-8")

Better idea ?

Upvotes: 0

Views: 8815

Answers (3)

zobi8225
zobi8225

Reputation: 2268

The best solution i've found was to replace bad char

xmlString = xmlString.replaceAll(" & #39;", " \ ' ");

Upvotes: 1

Lukas Knuth
Lukas Knuth

Reputation: 25755

I assume you're parsing the XML file with a SAXParser? In this case, note that the 'characters()'-method can be called multiple times while parsing a single Element (as it does in your case). Try this:

private StringBuilder temp_val;
public void characters(char[] ch, int start, int length){
    temp_val.append(ch, start, length);
}

Upvotes: 0

TofferJ
TofferJ

Reputation: 4784

You say that the text is HTML encoded so try this:

String fixedTmp = Html.fromHtml(tmp).toString();

Upvotes: 2

Related Questions