#include "cdm_xmltools.h" QMap CDM_XMLTools::mapEncodeEntities = CDM_XMLTools::staticInitMapEncodeEntities(); QMap CDM_XMLTools::mapDecodeEntities = CDM_XMLTools::staticInitMapDecodeEntities(); QString CDM_XMLTools::encodeDecodeEntities(const QMap &map, const QString &strToCompute){ QString str = strToCompute; QMapIterator it(map); while(it.hasNext()) { it.next(); str.replace(it.key(), it.value()); } return str; } QString CDM_XMLTools::encodeEntities(const QString &strToCompute) { return encodeDecodeEntities(CDM_XMLTools::mapEncodeEntities, strToCompute); } QString CDM_XMLTools::decodeEntities(const QString &strToCompute) { return encodeDecodeEntities(CDM_XMLTools::mapDecodeEntities, strToCompute); } QMap CDM_XMLTools::staticInitMapEncodeEntities() { QMap mapEncode; mapEncode["À"] = "À"; mapEncode["à"] = "à"; mapEncode["Á"] = "Á"; mapEncode["á"] = "á"; mapEncode["Â"] = "Â"; mapEncode["â"] = "â"; mapEncode["Ã"] = "Ã"; mapEncode["ã"] = "ã"; mapEncode["Ä"] = "Ä"; mapEncode["ä"] = "ä"; mapEncode["Å"] = "Å"; mapEncode["å"] = "å"; mapEncode["Æ"] = "Æ"; mapEncode["æ"] = "æ"; mapEncode["Ç"] = "Ç"; mapEncode["ç"] = "ç"; mapEncode["Ð"] = "Ð"; mapEncode["ð"] = "ð"; mapEncode["È"] = "È"; mapEncode["è"] = "è"; mapEncode["É"] = "É"; mapEncode["é"] = "é"; mapEncode["Ê"] = "Ê"; mapEncode["ê"] = "ê"; mapEncode["Ë"] = "Ë"; mapEncode["ë"] = "ë"; mapEncode["Ì"] = "Ì"; mapEncode["ì"] = "ì"; mapEncode["Í"] = "Í"; mapEncode["í"] = "í"; mapEncode["Î"] = "Î"; mapEncode["î"] = "î"; mapEncode["Ï"] = "Ï"; mapEncode["ï"] = "ï"; mapEncode["Ñ"] = "Ñ"; mapEncode["ñ"] = "ñ"; mapEncode["Ò"] = "Ò"; mapEncode["ò"] = "ò"; mapEncode["Ó"] = "Ó"; mapEncode["ó"] = "ó"; mapEncode["Ô"] = "Ô"; mapEncode["ô"] = "ô"; mapEncode["Õ"] = "Õ"; mapEncode["õ"] = "õ"; mapEncode["Ö"] = "Ö"; mapEncode["ö"] = "ö"; mapEncode["Ø"] = "Ø"; mapEncode["ø"] = "ø"; mapEncode["Œ"] = "˜"; mapEncode["œ"] = "œ"; mapEncode["ß"] = "ß"; mapEncode["Þ"] = "Þ"; mapEncode["þ"] = "þ"; mapEncode["Ù"] = "Ù"; mapEncode["ù"] = "ù"; mapEncode["Ú"] = "Ú"; mapEncode["ú"] = "ú"; mapEncode["Û"] = "Û"; mapEncode["û"] = "û"; mapEncode["Ü"] = "Ü"; mapEncode["ü"] = "ü"; mapEncode["Ý"] = "Ý"; mapEncode["ý"] = "ý"; mapEncode["Ÿ"] = "²"; mapEncode["ÿ"] = "ÿ"; mapEncode["<"] = "<"; mapEncode[">"] = ">"; mapEncode["!"] = "!"; mapEncode["\""] = """; mapEncode["#"] = "#"; mapEncode["$"] = "$"; mapEncode["%"] = "%"; mapEncode["&"] = "&"; mapEncode["'"] = "'"; mapEncode["("] = "("; mapEncode[")"] = ")"; mapEncode["<"] = "<"; mapEncode[">"] = ">"; mapEncode["/"] = "/"; return mapEncode; } QMap CDM_XMLTools::staticInitMapDecodeEntities() { QMap mapTmp = staticInitMapEncodeEntities(); QMap mapDecode; QMapIterator it(mapTmp); while(it.hasNext()) { it.next(); mapDecode.insert(it.value(), it.key()); } return mapDecode; }