Opendialog, Savedialog

Тема в разделе "Borland C++ Builder & Kylix", создана пользователем Greenpeas, 13 июл 2007.

Статус темы:
Закрыта.
  1. Greenpeas

    Greenpeas Гость

    Здравствуйте!
    Товарищчи программисты помогите плиз!
    Я открываю файл, например kartinka.bmp.
    Далее в программе мне необходимо использовать имя файла "kartinka". Как мне его получить из диалогов OpenDialog либо SaveDialog???
    Код (Text):
    if(OpenPictureDialog1->Execute())
    {
    Edit1->SelText=OpenPictureDialog1->FileName;
    }
    FileName Возвращает полное имя файла в виде D:\Builder TESTS\kartinka.bmp,
    а мне нужно только "kartinka"... и без расширения...
    Как это осуществить?
    Спасибо!
     
  2. European

    Регистрация:
    4 сен 2006
    Сообщения:
    2.580
    Симпатии:
    0
    Ну так разложи полученную строку на путь и название файла
     
  3. Greenpeas

    Greenpeas Гость

  4. European

    Регистрация:
    4 сен 2006
    Сообщения:
    2.580
    Симпатии:
    0
    Оба твоих вопроса на форуме решаются открытием помощи! SysUtils.ExtractFileName и подобные функции. Нажми F1
     
  5. Greenpeas

    Greenpeas Гость

    Хелпа нет толком... :D
     
  6. Greenpeas

    Greenpeas Гость

    Всё... спасибо... мне уже помогли...

    Код (Text):
    AnsiString a = OpenPictureDialog1->FileName;
    for (int i = a.Length(); i > 0; i--)
    {
    if (a[i] == '\\')
    {
    a = &a[i+1];
    break;
    }
    }
    Edit1->SelText=" [img="+a+"] ";
     
  7. tixon

    tixon Гость

    По порядку (чтобы понятнее, потом можно "упаковать" в одну строку)
    AnsiString filelNam;
    if(OpenPictureDialog1->Execute()
    {filelNam=OpenPictureDialog1->FileName;
    filelNam=ExtractFileName(filelNam); // получаешь filelNam=kartinka.bmp
    filelNam=filelNam.SubString(1,filelNam.Length()-4)// т.е. убираешь из kartinka.bmp
    // 4 последних символа ".bmp" и получаешь свое желанное kartinka
    Edit1->SelText=filelNam;
    }



    По порядку (чтобы понятнее, потом можно "упаковать" в одну строку)
    AnsiString filelNam;
    if(OpenPictureDialog1->Execute()
    {filelNam=OpenPictureDialog1->FileName;
    filelNam=ExtractFileName(filelNam); // получаешь filelNam=kartinka.bmp
    filelNam=filelNam.SubString(1,filelNam.Length()-4)// т.е. убираешь из kartinka.bmp
    // 4 последних символа ".bmp" и получаешь свое желанное kartinka
    Edit1->SelText=filelNam;
    }
     
  8. androidvsu

    androidvsu Гость

    А лучше всего просто обрезать расширение, ведь не всегда оно 3 символа!!!!!! :(
     
  9. etc

    etc Гость

    Еще смешнее то что топику "сто лет в обед".
     
Статус темы:
Закрыта.

Поделиться этой страницей