cezi123
(Cezarycezary2)
29 Grudzień 2007 13:44
#1
W jaki sposób zrobić coś takiego, żeby rodzaj i sposób odczytu/zapisu danych
program rozpoznaje po rozszerzeniu w nazwie pliku.
Chodzi o to, że jak sie wpisze save plik.txt to sie wywoła jedna funkcja, a jak save plik.mdb to jakaś inna.
Same funkcje mam już napisane tylko nie bardzo wiem, jaka funkcja może mi “złapać” kawałek wpisanej komendy po kropce (żeby tylko złapało txt albo mdb).
Mam nadzieje ze ująłem problem w miarę jasno.
nr47
(Sawyer47)
29 Grudzień 2007 13:52
#2
Problem jasno wyjaśnionym, ale podstawowe pytanie to w czym, jak, gdzie wpiszesz?
cezi123
(Cezarycezary2)
29 Grudzień 2007 13:59
#3
Program pisze w C, a komendy są wpisywane przez użytkownika, który ma listę poleceń do wyboru…
nr47
(Sawyer47)
29 Grudzień 2007 14:39
#4
Hmm o coś takiego Ci chodziło?
#include
#include
int main()
{
char plik[] = "plik.dobreprogramy";
char* ext = strrchr(plik, '.');
if(ext != NULL) {
int pos = ext - plik + 1;
printf("Rozszerzenie '%s' pliku '%s' zaczyna się od %d pozycji \n", ext, plik, pos);
if(!strcmp(ext, ".txt")) printf("Zapisuję plik txt...\n");
else if(!strcmp(ext, ".dobreprogramy")) printf("Zapisuję plik dobreprogramy...\n");
else printf("Rozszerzeie %s nie jest obsługiwane.\n", ext);
} else {
printf("Nie znaleziono rozszerzenia\n");
}
return 0;
}
W sumie to moje pierwsze doświadczenie z C, ale zadanie chyba spełnia? Możesz ten kod zapakować w funkcję, która wywołuje te właściwe.
cezi123
(Cezarycezary2)
29 Grudzień 2007 14:48
#5
dokładnie o coś takiego, spróbuje to zaraz wdrożyć do programu, bardzo dzięki za pomoc