• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

question-closed C++ Builder nie zapisuję rozszerzeń automatycznie

42 Warsaw Coding Academy
0 głosów
515 wizyt
pytanie zadane 20 września 2017 w C i C++ przez StanD Użytkownik (930 p.)
zamknięte 21 września 2017 przez StanD

Cześć! Mam pytanie, tworzę notatnik w Builderze. Teraz tworzę zapis i chciałbym ,aby użytkownik nie musiał wpisywać rozszerzenia np. tekst.txt chciałbym aby wystarczyło wpisać po prostu tekst ,a program dodał by rozszerzenie. Jak tego dokonać? Za odpowiedź dziękuję.

komentarz zamknięcia: uzyskałem odpowiedź

2 odpowiedzi

0 głosów
odpowiedź 21 września 2017 przez j23 Mędrzec (195,240 p.)
wybrane 21 września 2017 przez StanD
 
Najlepsza

Jak tego dokonać?

Porównujesz ostatnie cztery znaki nazwy pliku z ".txt". Jeśli są różne, dodajesz rozszerzenie:

auto p = strrchr(file_name.c_str(), '.');
if(!p || strcmp(p, ".txt") != 0 ) file_name += ".txt";

 

komentarz 21 września 2017 przez niezalogowany
Nie ma to jak wymieszać C z C++ :p
komentarz 21 września 2017 przez j23 Mędrzec (195,240 p.)

Celowo to zrobiłem, bo OP pisze w Builderze, a tam jest klasa AnsiString, więc podałem przykład, który powinien zadziałać z tą klasą.

 

Z drugiej strony, jeśli AnsiString, to pewnie CBv6, a to oznacza, że auto nie będzie działać... no nieważne.

komentarz 4 listopada 2021 przez kolmipilot Obywatel (1,570 p.)

gdzie to wkleić    

void __fastcall TForm1::ZapiszJako1Click(TObject *Sender)
{
         if(SaveDialog1->Execute())
        {
                try
                {
                tresc->Lines->SaveToFile(SaveDialog1->FileName);
                }
                catch (...)
                {
                ShowMessage("Błąd zapisu pliku");
                }
        }

}

 

0 głosów
odpowiedź 21 września 2017 przez niezalogowany
Do stringa z nazwa pliku od użytkownika dodajesz ".txt"...

Podobne pytania

0 głosów
6 odpowiedzi 1,446 wizyt
pytanie zadane 12 grudnia 2015 w C i C++ przez sqbi Początkujący (470 p.)
0 głosów
1 odpowiedź 561 wizyt
pytanie zadane 17 grudnia 2018 w Inne języki przez niezalogowany
0 głosów
1 odpowiedź 155 wizyt

93,389 zapytań

142,385 odpowiedzi

322,547 komentarzy

62,749 pasjonatów

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj

VMware Cloud PRO - przenieś swoją infrastrukturę IT do chmury
...