Functions to provide xml-valid strings

By removing invalid chars, see http://www.w3.org/TR/xml/#charsets
This commit is contained in:
Florent Le Coz
2013-12-15 00:34:13 +01:00
parent b29290f73a
commit 3960e4d5af
3 changed files with 87 additions and 1 deletions
+8
View File
@@ -11,6 +11,14 @@ namespace utils
* Based on http://en.wikipedia.org/wiki/UTF-8#Description
*/
bool is_valid_utf8(const char* s);
/**
* Remove all invalid codepoints from the given utf-8-encoded string.
* The value returned is a copy of the string, without the removed chars.
*
* See http://www.w3.org/TR/xml/#charsets for the list of valid characters
* in XML.
*/
std::string remove_invalid_xml_chars(const std::string& original);
/**
* Convert the given string (encoded is "encoding") into valid utf-8.
* If some decoding fails, insert an utf-8 placeholder character instead.