The character set for XML is Unicode, which means that most of the character positions from 0 to 31 and all of those from 127 to 159 do not correspond to any characters (they are gaps in the encoding, reserved for control functions). We shouldn't be writing these from jEmplode (especially into a file labelled ISO-8859-1) - apologies for not considering that they may be present on some players.

For the short term, you're in a position to hand-edit your tags (or your XML playlist file, but you'd have to do it every time you exported) to remove the troublesome characters.

For the long term, how should these characters be written to the output? Options include "\000" octal notation, "^@" caret notation, inserting a numeric character reference "�". I'm a bit wary of the last one, as I think it might cause problems downstream with the RTF output.

For the 128-159 range, there is also the option of assuming that these come from a Windows-1252 system and replacing them with character references to the characters at the corresponding positions in windows-1252. E.g. for your character 151, it would be replaced with "—" or "—" (value from the Windows-1252 mapping table from the Unicode Consortium).

Opinions?

P.S. Thanks, genixia, for investigating this.

P.P.S. I'll be unresponsive until Monday; I'll deal with stuff on my return.
_________________________
Toby Speight
030103016 (80GB Mk2a, blue)
030102806 (0GB Mk2a, blue)