<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <meta name="generator" content="Doxygen 1.8.11"/> <title>glibmm: Character Set Conversion</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="dynsections.js"></script> <link href="doxygen.css" rel="stylesheet" type="text/css" /> <link href="doxygen-extra.css" rel="stylesheet" type="text/css"/> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td id="projectalign" style="padding-left: 0.5em;"> <div id="projectname">glibmm  <span id="projectnumber">2.60.0</span> </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.11 --> <div id="navrow1" class="tabs"> <ul class="tablist"> <li><a href="index.html"><span>Main Page</span></a></li> <li><a href="pages.html"><span>Related Pages</span></a></li> <li class="current"><a href="modules.html"><span>Modules</span></a></li> <li><a href="namespaces.html"><span>Namespaces</span></a></li> <li><a href="annotated.html"><span>Classes</span></a></li> <li><a href="examples.html"><span>Examples</span></a></li> </ul> </div> </div><!-- top --> <div class="header"> <div class="summary"> <a href="#nested-classes">Classes</a> | <a href="#func-members">Functions</a> </div> <div class="headertitle"> <div class="title">Character Set Conversion</div> </div> </div><!--header--> <div class="contents"> <p>Utility functions for converting strings between different character sets. <a href="#details">More...</a></p> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a> Classes</h2></td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1ConvertError.html">Glib::ConvertError</a></td></tr> <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Exception class for charset conversion errors. <a href="classGlib_1_1ConvertError.html#details">More...</a><br /></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="classGlib_1_1IConv.html">Glib::IConv</a></td></tr> <tr class="memdesc:"><td class="mdescLeft"> </td><td class="mdescRight">Thin iconv() wrapper. <a href="classGlib_1_1IConv.html#details">More...</a><br /></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a> Functions</h2></td></tr> <tr class="memitem:gabf5fac564c47a7a9ad6037044c3909f4"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__CharsetConv.html#gabf5fac564c47a7a9ad6037044c3909f4">Glib::get_charset</a> ()</td></tr> <tr class="memdesc:gabf5fac564c47a7a9ad6037044c3909f4"><td class="mdescLeft"> </td><td class="mdescRight">Get the charset used by the current locale. <a href="group__CharsetConv.html#gabf5fac564c47a7a9ad6037044c3909f4">More...</a><br /></td></tr> <tr class="separator:gabf5fac564c47a7a9ad6037044c3909f4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga88965337df48a173a6b013e8243e4631"><td class="memItemLeft" align="right" valign="top">bool </td><td class="memItemRight" valign="bottom"><a class="el" href="group__CharsetConv.html#ga88965337df48a173a6b013e8243e4631">Glib::get_charset</a> (<a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a>& charset)</td></tr> <tr class="memdesc:ga88965337df48a173a6b013e8243e4631"><td class="mdescLeft"> </td><td class="mdescRight">Get the charset used by the current locale. <a href="group__CharsetConv.html#ga88965337df48a173a6b013e8243e4631">More...</a><br /></td></tr> <tr class="separator:ga88965337df48a173a6b013e8243e4631"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga58f7e4556c436a96c64b186bbc8f7f4c"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__CharsetConv.html#ga58f7e4556c436a96c64b186bbc8f7f4c">Glib::convert</a> (const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a>& str, const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a>& to_codeset, const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a>& from_codeset)</td></tr> <tr class="memdesc:ga58f7e4556c436a96c64b186bbc8f7f4c"><td class="mdescLeft"> </td><td class="mdescRight">Convert from one encoding to another. <a href="group__CharsetConv.html#ga58f7e4556c436a96c64b186bbc8f7f4c">More...</a><br /></td></tr> <tr class="separator:ga58f7e4556c436a96c64b186bbc8f7f4c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga40b5aa172fabd1f3dbf50a962d0d351f"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__CharsetConv.html#ga40b5aa172fabd1f3dbf50a962d0d351f">Glib::convert_with_fallback</a> (const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a>& str, const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a>& to_codeset, const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a>& from_codeset)</td></tr> <tr class="memdesc:ga40b5aa172fabd1f3dbf50a962d0d351f"><td class="mdescLeft"> </td><td class="mdescRight">Converts a string from one character set to another, possibly including fallback sequences for characters not representable in the output. <a href="group__CharsetConv.html#ga40b5aa172fabd1f3dbf50a962d0d351f">More...</a><br /></td></tr> <tr class="separator:ga40b5aa172fabd1f3dbf50a962d0d351f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaf1b091e4397a7637e884148484b1f71e"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__CharsetConv.html#gaf1b091e4397a7637e884148484b1f71e">Glib::convert_with_fallback</a> (const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a>& str, const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a>& to_codeset, const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a>& from_codeset, const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>& fallback)</td></tr> <tr class="memdesc:gaf1b091e4397a7637e884148484b1f71e"><td class="mdescLeft"> </td><td class="mdescRight">Converts a string from one character set to another, possibly including fallback sequences for characters not representable in the output. <a href="group__CharsetConv.html#gaf1b091e4397a7637e884148484b1f71e">More...</a><br /></td></tr> <tr class="separator:gaf1b091e4397a7637e884148484b1f71e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga4517b17f2aad4cd5c0e0640de212d928"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__CharsetConv.html#ga4517b17f2aad4cd5c0e0640de212d928">Glib::locale_to_utf8</a> (const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a>& opsys_string)</td></tr> <tr class="memdesc:ga4517b17f2aad4cd5c0e0640de212d928"><td class="mdescLeft"> </td><td class="mdescRight">Convert from the current locale's encoding to UTF-8. <a href="group__CharsetConv.html#ga4517b17f2aad4cd5c0e0640de212d928">More...</a><br /></td></tr> <tr class="separator:ga4517b17f2aad4cd5c0e0640de212d928"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gacc062729285890a7e9b22bece6fb987c"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__CharsetConv.html#gacc062729285890a7e9b22bece6fb987c">Glib::locale_from_utf8</a> (const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>& utf8_string)</td></tr> <tr class="memdesc:gacc062729285890a7e9b22bece6fb987c"><td class="mdescLeft"> </td><td class="mdescRight">Convert from UTF-8 to the current locale's encoding. <a href="group__CharsetConv.html#gacc062729285890a7e9b22bece6fb987c">More...</a><br /></td></tr> <tr class="separator:gacc062729285890a7e9b22bece6fb987c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga6cf95dc00505401594260a360d70c17b"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__CharsetConv.html#ga6cf95dc00505401594260a360d70c17b">Glib::filename_to_utf8</a> (const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a>& opsys_string)</td></tr> <tr class="memdesc:ga6cf95dc00505401594260a360d70c17b"><td class="mdescLeft"> </td><td class="mdescRight">Converts a string which is in the encoding used for filenames into a UTF-8 string. <a href="group__CharsetConv.html#ga6cf95dc00505401594260a360d70c17b">More...</a><br /></td></tr> <tr class="separator:ga6cf95dc00505401594260a360d70c17b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga2bd94064ad97b43324a7854b62f0835b"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__CharsetConv.html#ga2bd94064ad97b43324a7854b62f0835b">Glib::filename_from_utf8</a> (const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>& utf8_string)</td></tr> <tr class="memdesc:ga2bd94064ad97b43324a7854b62f0835b"><td class="mdescLeft"> </td><td class="mdescRight">Converts a string from UTF-8 to the encoding used for filenames. <a href="group__CharsetConv.html#ga2bd94064ad97b43324a7854b62f0835b">More...</a><br /></td></tr> <tr class="separator:ga2bd94064ad97b43324a7854b62f0835b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gada23cd7f7dc8eb25e99b867a55551763"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__CharsetConv.html#gada23cd7f7dc8eb25e99b867a55551763">Glib::filename_from_uri</a> (const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>& uri, <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>& hostname)</td></tr> <tr class="memdesc:gada23cd7f7dc8eb25e99b867a55551763"><td class="mdescLeft"> </td><td class="mdescRight">Converts an escaped UTF-8 encoded URI to a local filename in the encoding used for filenames. <a href="group__CharsetConv.html#gada23cd7f7dc8eb25e99b867a55551763">More...</a><br /></td></tr> <tr class="separator:gada23cd7f7dc8eb25e99b867a55551763"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gab1cb94f4a4a70bad06b715fb14a252d9"><td class="memItemLeft" align="right" valign="top"><a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__CharsetConv.html#gab1cb94f4a4a70bad06b715fb14a252d9">Glib::filename_from_uri</a> (const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>& uri)</td></tr> <tr class="memdesc:gab1cb94f4a4a70bad06b715fb14a252d9"><td class="mdescLeft"> </td><td class="mdescRight">Converts an escaped UTF-8 encoded URI to a local filename in the encoding used for filenames. <a href="group__CharsetConv.html#gab1cb94f4a4a70bad06b715fb14a252d9">More...</a><br /></td></tr> <tr class="separator:gab1cb94f4a4a70bad06b715fb14a252d9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gae1b2f056bde3fbab578c602fe42e3de9"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__CharsetConv.html#gae1b2f056bde3fbab578c602fe42e3de9">Glib::filename_to_uri</a> (const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a>& filename, const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>& hostname)</td></tr> <tr class="memdesc:gae1b2f056bde3fbab578c602fe42e3de9"><td class="mdescLeft"> </td><td class="mdescRight">Converts an absolute filename to an escaped UTF-8 encoded URI. <a href="group__CharsetConv.html#gae1b2f056bde3fbab578c602fe42e3de9">More...</a><br /></td></tr> <tr class="separator:gae1b2f056bde3fbab578c602fe42e3de9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaaf69aec83665229cc06596cf627d9d5a"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__CharsetConv.html#gaaf69aec83665229cc06596cf627d9d5a">Glib::filename_to_uri</a> (const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a>& filename)</td></tr> <tr class="memdesc:gaaf69aec83665229cc06596cf627d9d5a"><td class="mdescLeft"> </td><td class="mdescRight">Converts an absolute filename to an escaped UTF-8 encoded URI. <a href="group__CharsetConv.html#gaaf69aec83665229cc06596cf627d9d5a">More...</a><br /></td></tr> <tr class="separator:gaaf69aec83665229cc06596cf627d9d5a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga05dd67157ad35da4401263247b6f4d81"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__CharsetConv.html#ga05dd67157ad35da4401263247b6f4d81">Glib::filename_display_basename</a> (const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a>& filename)</td></tr> <tr class="memdesc:ga05dd67157ad35da4401263247b6f4d81"><td class="mdescLeft"> </td><td class="mdescRight">Returns the display basename for the particular filename, guaranteed to be valid UTF-8. <a href="group__CharsetConv.html#ga05dd67157ad35da4401263247b6f4d81">More...</a><br /></td></tr> <tr class="separator:ga05dd67157ad35da4401263247b6f4d81"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gabc1b404cc965f3da6beecddfe2623afc"><td class="memItemLeft" align="right" valign="top"><a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a> </td><td class="memItemRight" valign="bottom"><a class="el" href="group__CharsetConv.html#gabc1b404cc965f3da6beecddfe2623afc">Glib::filename_display_name</a> (const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a>& filename)</td></tr> <tr class="memdesc:gabc1b404cc965f3da6beecddfe2623afc"><td class="mdescLeft"> </td><td class="mdescRight">Converts a filename into a valid UTF-8 string. <a href="group__CharsetConv.html#gabc1b404cc965f3da6beecddfe2623afc">More...</a><br /></td></tr> <tr class="separator:gabc1b404cc965f3da6beecddfe2623afc"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <p>Utility functions for converting strings between different character sets. </p> <h2 class="groupheader">Function Documentation</h2> <a class="anchor" id="ga58f7e4556c436a96c64b186bbc8f7f4c"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> Glib::convert </td> <td>(</td> <td class="paramtype">const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> & </td> <td class="paramname"><em>str</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> & </td> <td class="paramname"><em>to_codeset</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> & </td> <td class="paramname"><em>from_codeset</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Convert from one encoding to another. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">str</td><td>The string to convert. </td></tr> <tr><td class="paramname">to_codeset</td><td>Name of the target charset. </td></tr> <tr><td class="paramname">from_codeset</td><td>Name of the source charset. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The converted string. </dd></dl> <dl class="exception"><dt>Exceptions</dt><dd> <table class="exception"> <tr><td class="paramname"><a class="el" href="classGlib_1_1ConvertError.html" title="Exception class for charset conversion errors. ">Glib::ConvertError</a></td><td></td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="ga40b5aa172fabd1f3dbf50a962d0d351f"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> Glib::convert_with_fallback </td> <td>(</td> <td class="paramtype">const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> & </td> <td class="paramname"><em>str</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> & </td> <td class="paramname"><em>to_codeset</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> & </td> <td class="paramname"><em>from_codeset</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Converts a string from one character set to another, possibly including fallback sequences for characters not representable in the output. </p> <p>Characters not in the target encoding will be represented as <a class="el" href="namespaceGlib_1_1Unicode.html">Unicode</a> escapes <code>\x{XXXX}</code> or <code>\x{XXXXXX}</code>. </p><dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">str</td><td>The string to convert. </td></tr> <tr><td class="paramname">to_codeset</td><td>Name of the target charset. </td></tr> <tr><td class="paramname">from_codeset</td><td>Name of the source charset. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The converted string. </dd></dl> <dl class="exception"><dt>Exceptions</dt><dd> <table class="exception"> <tr><td class="paramname"><a class="el" href="classGlib_1_1ConvertError.html" title="Exception class for charset conversion errors. ">Glib::ConvertError</a></td><td></td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="gaf1b091e4397a7637e884148484b1f71e"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> Glib::convert_with_fallback </td> <td>(</td> <td class="paramtype">const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> & </td> <td class="paramname"><em>str</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> & </td> <td class="paramname"><em>to_codeset</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> & </td> <td class="paramname"><em>from_codeset</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>& </td> <td class="paramname"><em>fallback</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Converts a string from one character set to another, possibly including fallback sequences for characters not representable in the output. </p> <dl class="section note"><dt>Note</dt><dd>It is not guaranteed that the specification for the fallback sequences in <em>fallback</em> will be honored. Some systems may do a approximate conversion from <em>from_codeset</em> to <em>to_codeset</em> in their iconv() functions, in which case <a class="el" href="namespaceGlib.html">Glib</a> will simply return that approximate conversion.</dd></dl> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">str</td><td>The string to convert. </td></tr> <tr><td class="paramname">to_codeset</td><td>Name of the target charset. </td></tr> <tr><td class="paramname">from_codeset</td><td>Name of the source charset. </td></tr> <tr><td class="paramname">fallback</td><td>UTF-8 string to be used in place of characters which aren't available in the target encoding. All characters in the fallback string <em>must</em> be available in the target encoding. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The converted string. </dd></dl> <dl class="exception"><dt>Exceptions</dt><dd> <table class="exception"> <tr><td class="paramname"><a class="el" href="classGlib_1_1ConvertError.html" title="Exception class for charset conversion errors. ">Glib::ConvertError</a></td><td></td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="ga05dd67157ad35da4401263247b6f4d81"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a> Glib::filename_display_basename </td> <td>(</td> <td class="paramtype">const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> & </td> <td class="paramname"><em>filename</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Returns the display basename for the particular filename, guaranteed to be valid UTF-8. </p> <p>The display name might not be identical to the filename, for instance there might be problems converting it to UTF-8, and some files can be translated in the display</p> <p>You must pass the whole absolute pathname to this function so that translation of well known locations can be done.</p> <p>This function is preferred over <a class="el" href="group__CharsetConv.html#gabc1b404cc965f3da6beecddfe2623afc" title="Converts a filename into a valid UTF-8 string. ">filename_display_name()</a> if you know the whole path, as it allows translation.</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">filename</td><td>An absolute pathname in the GLib file name encoding. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>A string containing a rendition of the basename of the filename in valid UTF-8 </dd></dl> </div> </div> <a class="anchor" id="gabc1b404cc965f3da6beecddfe2623afc"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a> Glib::filename_display_name </td> <td>(</td> <td class="paramtype">const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> & </td> <td class="paramname"><em>filename</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Converts a filename into a valid UTF-8 string. </p> <p>The conversion is not necessarily reversible, so you should keep the original around and use the return value of this function only for display purposes. Unlike g_filename_to_utf8(), the result is guaranteed to be non-empty even if the filename actually isn't in the GLib file name encoding.</p> <p>If you know the whole pathname of the file you should use g_filename_display_basename(), since that allows location-based translation of filenames.</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">filename</td><td>a pathname hopefully in the GLib file name encoding </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>A string containing a rendition of the filename in valid UTF-8. </dd></dl> </div> </div> <a class="anchor" id="gada23cd7f7dc8eb25e99b867a55551763"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> Glib::filename_from_uri </td> <td>(</td> <td class="paramtype">const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>& </td> <td class="paramname"><em>uri</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>& </td> <td class="paramname"><em>hostname</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Converts an escaped UTF-8 encoded URI to a local filename in the encoding used for filenames. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">uri</td><td>A string in the encoding for filenames. </td></tr> <tr><td class="paramname">hostname</td><td>Location to store hostname for the URI. If there is no hostname in the URI, <code>""</code> will be stored in this location. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The resulting filename. </dd></dl> <dl class="exception"><dt>Exceptions</dt><dd> <table class="exception"> <tr><td class="paramname"><a class="el" href="classGlib_1_1ConvertError.html" title="Exception class for charset conversion errors. ">Glib::ConvertError</a></td><td></td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="gab1cb94f4a4a70bad06b715fb14a252d9"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> Glib::filename_from_uri </td> <td>(</td> <td class="paramtype">const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>& </td> <td class="paramname"><em>uri</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Converts an escaped UTF-8 encoded URI to a local filename in the encoding used for filenames. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">uri</td><td>A string in the encoding for filenames. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The resulting filename. </dd></dl> <dl class="exception"><dt>Exceptions</dt><dd> <table class="exception"> <tr><td class="paramname"><a class="el" href="classGlib_1_1ConvertError.html" title="Exception class for charset conversion errors. ">Glib::ConvertError</a></td><td></td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="ga2bd94064ad97b43324a7854b62f0835b"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> Glib::filename_from_utf8 </td> <td>(</td> <td class="paramtype">const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>& </td> <td class="paramname"><em>utf8_string</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Converts a string from UTF-8 to the encoding used for filenames. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">utf8_string</td><td>A UTF-8 encoded string. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The converted string. </dd></dl> <dl class="exception"><dt>Exceptions</dt><dd> <table class="exception"> <tr><td class="paramname"><a class="el" href="classGlib_1_1ConvertError.html" title="Exception class for charset conversion errors. ">Glib::ConvertError</a></td><td></td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="gae1b2f056bde3fbab578c602fe42e3de9"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a> Glib::filename_to_uri </td> <td>(</td> <td class="paramtype">const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> & </td> <td class="paramname"><em>filename</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>& </td> <td class="paramname"><em>hostname</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </div><div class="memdoc"> <p>Converts an absolute filename to an escaped UTF-8 encoded URI. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">filename</td><td>An absolute filename specified in the encoding used for filenames by the operating system. </td></tr> <tr><td class="paramname">hostname</td><td>A UTF-8 encoded hostname. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The resulting URI. </dd></dl> <dl class="exception"><dt>Exceptions</dt><dd> <table class="exception"> <tr><td class="paramname"><a class="el" href="classGlib_1_1ConvertError.html" title="Exception class for charset conversion errors. ">Glib::ConvertError</a></td><td></td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="gaaf69aec83665229cc06596cf627d9d5a"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a> Glib::filename_to_uri </td> <td>(</td> <td class="paramtype">const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> & </td> <td class="paramname"><em>filename</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Converts an absolute filename to an escaped UTF-8 encoded URI. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">filename</td><td>An absolute filename specified in the encoding used for filenames by the operating system. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The resulting URI. </dd></dl> <dl class="exception"><dt>Exceptions</dt><dd> <table class="exception"> <tr><td class="paramname"><a class="el" href="classGlib_1_1ConvertError.html" title="Exception class for charset conversion errors. ">Glib::ConvertError</a></td><td></td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="ga6cf95dc00505401594260a360d70c17b"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a> Glib::filename_to_utf8 </td> <td>(</td> <td class="paramtype">const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> & </td> <td class="paramname"><em>opsys_string</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Converts a string which is in the encoding used for filenames into a UTF-8 string. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">opsys_string</td><td>A string in the encoding for filenames. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The converted string. </dd></dl> <dl class="exception"><dt>Exceptions</dt><dd> <table class="exception"> <tr><td class="paramname"><a class="el" href="classGlib_1_1ConvertError.html" title="Exception class for charset conversion errors. ">Glib::ConvertError</a></td><td></td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="gabf5fac564c47a7a9ad6037044c3909f4"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool Glib::get_charset </td> <td>(</td> <td class="paramname"></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Get the charset used by the current locale. </p> <dl class="section return"><dt>Returns</dt><dd>Whether the current locale uses the UTF-8 charset. </dd></dl> </div> </div> <a class="anchor" id="ga88965337df48a173a6b013e8243e4631"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">bool Glib::get_charset </td> <td>(</td> <td class="paramtype"><a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> & </td> <td class="paramname"><em>charset</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Get the charset used by the current locale. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">charset</td><td>Will be filled with the charset's name. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>Whether the current locale uses the UTF-8 charset. </dd></dl> </div> </div> <a class="anchor" id="gacc062729285890a7e9b22bece6fb987c"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> Glib::locale_from_utf8 </td> <td>(</td> <td class="paramtype">const <a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a>& </td> <td class="paramname"><em>utf8_string</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Convert from UTF-8 to the current locale's encoding. </p> <p>Convenience wrapper around <a class="el" href="group__CharsetConv.html#ga58f7e4556c436a96c64b186bbc8f7f4c" title="Convert from one encoding to another. ">Glib::convert()</a>. </p><dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">utf8_string</td><td>The UTF-8 string to convert. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The input string converted to the charset used by the operating system's current locale. </dd></dl> <dl class="exception"><dt>Exceptions</dt><dd> <table class="exception"> <tr><td class="paramname"><a class="el" href="classGlib_1_1ConvertError.html" title="Exception class for charset conversion errors. ">Glib::ConvertError</a></td><td></td></tr> </table> </dd> </dl> </div> </div> <a class="anchor" id="ga4517b17f2aad4cd5c0e0640de212d928"></a> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname"><a class="el" href="classGlib_1_1ustring.html">Glib::ustring</a> Glib::locale_to_utf8 </td> <td>(</td> <td class="paramtype">const <a class="elRef" href="http://gcc.gnu.org/onlinedocs/libstdc++/latest-doxygen/a01512.html#ga32db3d9898c44d3b3a578b560f7758cc">std::string</a> & </td> <td class="paramname"><em>opsys_string</em></td><td>)</td> <td></td> </tr> </table> </div><div class="memdoc"> <p>Convert from the current locale's encoding to UTF-8. </p> <p>Convenience wrapper around <a class="el" href="group__CharsetConv.html#ga58f7e4556c436a96c64b186bbc8f7f4c" title="Convert from one encoding to another. ">Glib::convert()</a>. </p><dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">opsys_string</td><td>The string to convert. Must be encoded in the charset used by the operating system's current locale. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>The input string converted to UTF-8 encoding. </dd></dl> <dl class="exception"><dt>Exceptions</dt><dd> <table class="exception"> <tr><td class="paramname"><a class="el" href="classGlib_1_1ConvertError.html" title="Exception class for charset conversion errors. ">Glib::ConvertError</a></td><td></td></tr> </table> </dd> </dl> </div> </div> </div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated on Tue Mar 19 2019 09:56:38 for glibmm by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.8.11 </small></address> </body> </html>