Strona 1 z 1
[C] Wczytywanie z pliku zewnętrznego
: 12 sty 2015, o 12:00
autor: Igor V
Witam.
Potrzebuję zrobić coś takiego że chcę wczytać po kolei dane z pliku ,przy czym dane mam w formie :
Kod: Zaznacz cały
pozycja_1
nazwa_a_1
nazwa_b_1
nr_1
pozycja_2
nazwa_a_2
nazwa_b_2
nr_2
.
.
.
pozycja_n
nazwa_a_n
nazwa_b_n
nr_n
Gdzie pozycja i numer to inty a nazwa_a i nazwa_b stringi.I chcę teraz tak to pobrać żebym mógł to wypisać tak samo w konsoli.Zastanawiałem się nad pętlą for+getline ,ale jakoś tego nie widzę.Bo na pewno muszę mieć dwie tablice charów ,to zapiszę do nich nazwa_a i nazwa_b oraz dwie zmienne typu int.Jednak nie wiem jak to dokładnie zaimplementować.
[C] Wczytywanie z pliku zewnętrznego
: 12 sty 2015, o 21:50
autor: csminus
Zamierzasz coś robić z tymi danymi, czy chcesz je tylko wypisać?
[C] Wczytywanie z pliku zewnętrznego
: 13 sty 2015, o 01:12
autor: Igor V
W sumie i chcę je wypisać i wpakować do struktur W sensie że jeden taki blok to jedna struktura.
[C] Wczytywanie z pliku zewnętrznego
: 13 sty 2015, o 10:35
autor: WarNaX
W zasadzie to się przejęzyczyłeś, bo "taki 1 blok to 1 struktura", chodziło Ci raczej o obiekt. Poza tym móisz o getline, a w temacie masz C;)
Robisz sobie statyczną, albo dynamiczną tablicę obiektów. np, tak:
Kod: Zaznacz cały
typedef struct S
{
int poz;
char nazwa1[xxx];
char nazwa2[yyy];
int nr;
}s;
s objekty[zzz];
for(i=0;i<zzz;i++)
{
scanf("%i", &tab[i].poz);
scanf("%s", tab[i].nazwa1);
scanf("%s", tab[i].nazwa2);
scanf("%i", tab[i].nr);
}
oczywiście, jeśli wiesz ile będziesz miał obiektów w pliku
W c++ byłoby znacznie łatwiej dzięki vector-owi, czy string-om
[C] Wczytywanie z pliku zewnętrznego
: 13 sty 2015, o 21:54
autor: Igor V
Tak ,trochę czytałem i nie zauważyłem że nie ma tego w C.
Problem w tym że nie wiem bezpośrednio.Po to mam pozycja_n i chciałbym to jakoś pobrać i w ten sposób alokować struktury.Tylko że fscanf wczytuje chyba w bajtach albo po znakach i nie wiem jak zrobić żeby pobierało to co chcę.