Glib::ustring nach std::string konvertieren
-
Hallo C++ Forum,
ich nutze in meinem Programm die libxml++ [1] und hole mir mit
Glib::ustring xmlpp::TextReader::get_attribute (const Glib::ustring& name) const[2] die Daten. Nur wie bekomme ich einen Glib::ustring am elegantesten in einen std::string?
Gibt es was besseres als diestd::string Glib::locale_from_utf8(const Glib::ustring& utf8_string)[3] Das Programm soll später auch unter Windows laufen, da wollte ich nicht unbedingt Glib mit hinzunehmen.
Sollte man hier extra Code für das jeweilige System schreiben? Welche Bibliothek wäre unter Windows zu nutzen? Oder sollte man gleich den Code der Glib::locale_from_utf8 Funktion in den eigenen einpflegen?
[1] http://libxmlplusplus.sourceforge.net/
[2] http://libxmlplusplus.sourceforge.net/docs/reference/html/classxmlpp_1_1TextReader.html#0988d72f2cbbb8e426df972cb5363cd3
[3] http://www.gtkmm.org/docs/glibmm-2.4/docs/reference/html/group__CharsetConv.html#gcc062729285890a7e9b22bece6fb987c
-
Glib läuft doch auch problemlos unter Windows.
Ansonsten ist der größte Vorteil von ustring die Möglichkeit UTF8 zu behandeln.
Das kannst du zur Not auch selber machen, ich würde allerdings einfach die Glib oder eine ähnliche Bibliothek für Strings mit UTF8 nutzen.
-
Danke für deine Antwort
The-Kenny schrieb:
Ansonsten ist der größte Vorteil von ustring die Möglichkeit UTF8 zu behandeln.
Stimmt
Ich sollte mir vielleicht erstmal darüber Gedanken machen, ustring statt string zu nutzen. Die std::string-Funktionen stellt die GLib sicher auch für ustring bereit.edit: Hier sind sie
http://www.gtkmm.org/docs/glibmm-2.4/docs/reference/html/classGlib_1_1ustring.html