Obsah fóra
PravidláRegistrovaťPrihlásenie




Odpovedať na tému [ Príspevkov: 3 ] 
AutorSpráva
Offline

Užívateľ
Užívateľ
Štruktúra, čítanie zo súboru [C]

Registrovaný: 07.04.12
Prihlásený: 02.06.21
Príspevky: 907
Témy: 54
Príspevok NapísalOffline : 17.04.2015 21:29

Zdravím,
prosím vás riešim čítanie zo súboru a zápis do štruktúry, moc si s tým neviem poradiť, resp. nefunguje ako by som si to predstavoval.
Mám txt súbor a potrebujem ho uložiť do štruktúry.
Kód:
typedef struct t_models
{
   char      model[50];
   t_models   *NextModels;
};

typedef struct t_cars
{
   char      brand[50];
   t_models   *type;
   t_cars      *NextCars;
};

Kód:
t_cars   *db_cars;
void Init(void)
{
   int      num1, num2;
   char   brand[50];
   char   model[50];
   t_cars   *cars;
   FILE   *ptrfile;

   ptrfile = fopen(file_db, "rt");
   if (ptrfile != NULL)
   {
      fscanf(ptrfile, "%d", &num1);
      if (num1 != 0)
      {
         for (int m = 0; m < num1; m++)
         {
            fscanf(ptrfile, "%d %s", &num2, brand);
            cars = (t_cars*)malloc(sizeof(t_cars));
            cars->type = (t_models*)malloc(sizeof(t_models));
            cars->type->NextModels = (t_models*)malloc(sizeof(t_models));
            strcpy(cars->brand, brand);
            for (int n = 0; n < num2; n++)
            {
               fscanf(ptrfile, " %s", model);
               if (n == 0)
                  //db_cars->type = cars->type;
                  strcpy(cars->type->model, model);
               else
                  //db_cars->type->NextModels = cars->type;
                  strcpy(cars->type->NextModels->model, model);
            }
            
            if (m == 0)
               db_cars = cars;
            else
               db_cars->NextCars = cars;
         }
      }
      fclose(ptrfile);
   }
}

Kód:
2
3 Audi A8 S8 RS5
3 BMW I8 X6 Z4

V txt súbore mám na 1. riadku počet záznamov, na každom riadku je ako 1. číslo počet modelov danej značky.

V podstate sa snažím spraviť DB pre autobazár, z jedného súboru načítavam zvyšné parametre, ako cena, rok, .. a v 2. súbore mám uložené značky a modely ku každej, prípadne ako by ste to riešili vy?
Kód:
typedef struct t_car
{
   int      id;
        t_cars   cars;
   int      year;
   int      km;
   int      price;
   t_city   city;
   int      reserve;
   t_car   *NextCar;
} a_car;




Vopred vďaka za radu.







_________________
Notebook: Dell Inspiron 15-7537= i5-4200U|nVidia GT 750M 2GB|RAM 6GB|250GB Samsung 850 EVO|W8.1|Cooler Master NotePal U3
Pc: Asus Rog Strix B360-G | i7-8700 | MSI 1080 Gaming X | Crucial Ballistix 16GB 2666MHz Dual Ranked | Samsung 970 Evo | Crucial MX500 | WD Red | Fera 3 | Arctic F12 Silent | Seasonic Focus Plus 650W Gold | Fractal Design Mini C TG
Disk: Western Digital Elements 1TB USB 2.0; Seagate Expansion 2TB USB 3.0
Príslušenstvo: A4tech Bloody V3 V-Track Core 3 + A4tech Bloody B-070; A4tech Bloody B120; A4tech Bloody G501; ATH-M40x; MSI Clutch M40
Monitor: Dell U2515H
Mobil: Xiaomi Redmi Note 3 Special Edition
Offline

Užívateľ
Užívateľ
Štruktúra, čítanie zo súboru [C]

Registrovaný: 19.05.08
Prihlásený: 27.03.24
Príspevky: 664
Témy: 28
Bydlisko: Slovensko
Príspevok NapísalOffline : 18.04.2015 7:28

Otazka: Ty chces z tohto programu potom naplnit nejaku normalnu databazu, ci chces pouzivat tuto aplikaciu ako databazu ? o_O


Offline

Užívateľ
Užívateľ
Štruktúra, čítanie zo súboru [C]

Registrovaný: 07.04.12
Prihlásený: 02.06.21
Príspevky: 907
Témy: 54
Príspevok Napísal autor témyOffline : 18.04.2015 9:26

Pôvodne to mám riešené tak, že mám 1txt súbor, kde mám uložené všetky data
Kód:
2
1 0 0 1995 150 5800 2 0
2 0 1 2000 100 3800 5 1

ID Značka Model Rok Kilometre Cena Mesto Rezervácia
V programe následne čísla prevádzam na text, ako to mám def. v poradí
Kód:
static const char *brandNames[] = { "Audi", "BMW", "Ford", "Chevrolet", "KIA" };
...
   for (int i = 0; i < (sizeof(brandNames) / sizeof(char)); i++) {
      if (i == act->brand)
         strcpy(brand, brandNames[i]);
   }

Mám funkciu Init, kde si všetky záznamy načítam do štruktúry, a následne funkciu Get, kde pri vypisovaní po 1 zázname vyťahujem a vypisujem (je to projekt do C++, výpis do DataGridView, ale to nie je až tak podstatné, potrebujem to len nejak dostať do tej štruktúry).

A čo mi napadlo, že by som to chcel viac "dynamicky", tzn. nemať presne stanovenú značku a k nej dané modely, ale držať tieto údaje v ďalšej štruktúre a načítavať ich z iného súboru, približne ako bolo uvedené v 1. príspevku.







_________________
Notebook: Dell Inspiron 15-7537= i5-4200U|nVidia GT 750M 2GB|RAM 6GB|250GB Samsung 850 EVO|W8.1|Cooler Master NotePal U3
Pc: Asus Rog Strix B360-G | i7-8700 | MSI 1080 Gaming X | Crucial Ballistix 16GB 2666MHz Dual Ranked | Samsung 970 Evo | Crucial MX500 | WD Red | Fera 3 | Arctic F12 Silent | Seasonic Focus Plus 650W Gold | Fractal Design Mini C TG
Disk: Western Digital Elements 1TB USB 2.0; Seagate Expansion 2TB USB 3.0
Príslušenstvo: A4tech Bloody V3 V-Track Core 3 + A4tech Bloody B-070; A4tech Bloody B120; A4tech Bloody G501; ATH-M40x; MSI Clutch M40
Monitor: Dell U2515H
Mobil: Xiaomi Redmi Note 3 Special Edition
Odpovedať na tému [ Príspevkov: 3 ] 


Podobné témy

 Témy  Odpovede  Zobrazenia  Posledný príspevok 
V tomto fóre nie sú ďalšie neprečítané témy. c++ citanie zo suboru

v Assembler, C, C++, Pascal, Java

2

1980

24.09.2012 20:08

S1RuP Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. C formatované čítanie zo súboru

v Assembler, C, C++, Pascal, Java

13

845

06.05.2012 10:46

aktyX Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. C# čítanie jedného riadka z textového súboru

v Assembler, C, C++, Pascal, Java

4

514

27.06.2014 14:08

walther Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. c++ struktura

v Assembler, C, C++, Pascal, Java

1

485

26.06.2012 17:00

street_punk Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. citanie zo suboru: pascal

v Assembler, C, C++, Pascal, Java

3

700

24.04.2009 21:14

juho Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. c++ štruktúra pomocov new

v Assembler, C, C++, Pascal, Java

2

456

05.01.2011 20:00

noro-nr Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. PHP citanie z TXT suboru

v PHP, ASP

6

1053

12.06.2010 10:54

kexo Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. dynamicka struktura, bool a pouzitie vo funkcii C++ otazka

v Assembler, C, C++, Pascal, Java

3

373

05.02.2016 12:57

Elendil Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. C++ Čítanie ŠPZ

v Assembler, C, C++, Pascal, Java

4

586

28.03.2017 19:08

void Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. C++ Čitanie znakov/čísel

v Assembler, C, C++, Pascal, Java

6

561

09.05.2014 12:04

Lukys12345 Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Efektívne čítanie príkazov - C

v Assembler, C, C++, Pascal, Java

13

707

28.12.2013 16:06

BX Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. [C++] ZENIT - čítanie vstup.in

v Assembler, C, C++, Pascal, Java

18

1004

13.11.2011 15:31

nBXXL Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. [C] Citanie integeru v cykle

v Assembler, C, C++, Pascal, Java

14

495

15.11.2014 18:28

BX Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. zapisovanie do suboru v C#

v Technológia .NET

1

569

19.05.2013 21:41

walther Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. [C++] formatovanie vstupu zo suboru

v Assembler, C, C++, Pascal, Java

7

441

27.04.2013 23:31

vama Zobrazenie posledných príspevkov

V tomto fóre nie sú ďalšie neprečítané témy. Problem s vypisom zo suboru C

v Assembler, C, C++, Pascal, Java

4

356

01.04.2012 12:47

gaspa10 Zobrazenie posledných príspevkov


Nemôžete zakladať nové témy v tomto fóre
Nemôžete odpovedať na témy v tomto fóre
Nemôžete upravovať svoje príspevky v tomto fóre
Nemôžete mazať svoje príspevky v tomto fóre

Skočiť na:  

Powered by phpBB Jarvis © 2005 - 2024 PCforum, webhosting by WebSupport, secured by GeoTrust, edited by JanoF
Ako väčšina webových stránok aj my používame cookies. Zotrvaním na webovej stránke súhlasíte, že ich môžeme používať.
Všeobecné podmienky, spracovanie osobných údajov a pravidlá fóra