xml2asc - convert UTF-8 to &#nnn; entities
xml2asc
Reads an UTF-8 encoded text from standard input and writes to standard output,
converting all non-ASCII characters to &#nnn; entities, so that the result
is ASCII-encoded.
One example use is to convert ISO-8859-1 to ASCII with &#nnn; entities, by
first running
asc2xml to convert ISO-8859-1 to UTF-8 and then pipe the
result into
xml2asc to convert to ASCII with &#nnn; entities for
all accented characters.
To test if a file is correct UTF-8, ignore the output and test the exit code,
e.g. in Bash:
xml2asc <myfile >/dev/null && echo "OK" || echo "Fail"
xml2asc returns with a non-zero exit code if the input was not UTF-8.
asc2xml(1),
UTF-8 (RFC 2279)
Doesn't distinguish mark-up from content, so if the input uses non-ASCII
characters in XML element names, they will be output with numerical entities
in them, which is not legal in XML.