Update для функции ReplaceForbiddenCharsInFileName
May 20th, 2008 Begemot Posted in Программирование
Обнаружил что Винда не любит точки в конце папок, поэтому доработал функциию ReplaceForbiddenCharsInFileName, теперь будет так
/********************** 22/03/08 19:41 *************************
deleteDotsAtEnd – удалять ли точки в конце, винда неразрешает такие имена, хотя и дает их создать програмно:)
******************************************************************/
/*static*/
wxString & BegUtils::ReplaceForbiddenCharsInFileName(wxString & name, const wxString ch/*=wxT("_")*/, bool deleteDotsAtEnd/*=true*/)
{
wxString forbidden = wxFileName::GetForbiddenChars();
int size=forbidden.Length();
for (int i=0; i<size; ++i)
name.Replace( wxString(forbidden[i]), ch,
true);
if (deleteDotsAtEnd)
{
int count=0, len=name.Len()-1;
while( name.GetChar(len-count)==_T(‘.’)) count++;
if (count) name=name.Left(name.Length()-count);
}
return name;
}
(пока я пишу только под винду)