Panel użytkownika
Nazwa użytkownika:
Hasło:
Nie masz jeszcze konta?

Otwieranie pliku używając string

Ostatnio zmodyfikowano 2016-10-19 22:41
Autor Wiadomość
Krway
Temat założony przez niniejszego użytkownika
Otwieranie pliku używając string
» 2016-10-19 22:11:22
Witam.
Chciałem napisać prosty program w którym użytkownik podaje ścieżkę do pliku a program wypisuje z niego dane. Mysłałem by skorzystać z:
C/C++
fstream plik;
string nazwa;
cin >> nazwa;
plik.open( nazwa );
Lecz to by było chyba za łatwe i nie działa.
Czy wytłumaczy ktoś jak to zrobić?
Dzięki za odpowiedź!
P-152662
pekfos
» 2016-10-19 22:13:43
Użyj std::getline(), a nie >>.
P-152663
Krway
Temat założony przez niniejszego użytkownika
» 2016-10-19 22:25:14
To jest chyba bez różnicy czy 'cin' a 'getline' po prostu funkcji 'open()' nie pasuje string w środku i nie mam pomysłu jak wrzucić tam coś wprowadzonego przez użytkownika :/
P-152664
carlosmay
» 2016-10-19 22:41:38
nie pasuje string w środku i nie mam pomysłu jak wrzucić tam coś wprowadzonego przez użytkownika
std::string pasuje od C++11, przed dopisujemy nazwa.c_str().

C/C++
getline( cin, nazwa );
plik.open( nazwa + ".txt", ios::in );

// lub
plik.open(( nazwa + ".txt" ).c_str(), ios::in );

Jeszcze sprawdź automatyczne dodawanie popularnych rozszerzeń, bo może tworzysz np. test.txt.txt.
P-152665
« 1 »
  Strona 1 z 1