1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46
| std::string GetOracleClassTableName(std::string a_strTableName)
{
std::string strTabName = a_strTableName;
std::map<char,char> mapTrans;
std::string strSource(" ûùéèêàâîïôöç,;:!§/.?&%¨^/*+&\"''()={[|`\\^@]}°µ-");
std::string strDestination("_uueeeaaiiooc");
unsigned int lenD = strDestination.length();
for(unsigned int i = 0; i < strSource.length(); i++)
{
if (i < lenD)
mapTrans[strSource[i]] = strDestination[i];
else
mapTrans[strSource[i]] = NULL;
}
for(unsigned int i = 0; i < strTabName.size(); i++)
{
std::map<char,char>::iterator it = mapTrans.find(strTabName[i]);
if (it != mapTrans.end())
{
if (mapTrans[strTabName[i]])
{
strTabName[i] = mapTrans[strTabName[i]];
}
/*else
strTabName*/
}
}
/*if (wstrTabName.length() > 30)
{
wstrTabName.clear();
wstrTabName = a_wstrTableName.substr(0,30);
}*/
return strTabName;
}//GetOracleClassTableName
void CTRANSLATE_In_CppDlg::OnBnClickedOk()
{
std::string strTest = GetOracleClassTableName("élève contrôle à Paris sûr");
CString str(strTest.c_str());
AfxMessageBox(str);//afficher la chaine sans accents
} |
Partager