Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » C / C++ (ANSI-Standard) » einlesen von datei in ein feld

Forum | Hilfe | Team | Links | Impressum | > Suche < | Mitglieder | Registrieren | Einloggen
  Quicklinks: MSDN-Online || STL || clib Reference Grundlagen || Literatur || E-Books || Zubehör || > F.A.Q. < || Downloads   

Autor Thread - Seiten: > 1 <
000
10.05.2005, 18:38 Uhr
~max_88
Gast


hi leute,

habe ein projekt zu machen und hänge seit ca. 2 wochen bei diesem Problem. Habe es bereits in anderen Foren gepostet, jedoch ist keine antwort gekommen!

ich muss nächste woche mein projekt zum Thema Sortieragorithemn abgeben, und davon hängt ne menge ab. Ich habe schon alles von mir wissende probiert, aber es hilft nichts, ich weiß dass man das nicht machen sollte, aber ich bitte euch draum mir eine lösung vorzuschlagen, sodass man werte (zahlen und buchstaben) aus einer Datei liest, diese in ein Feld speichert, wenn es geht ohne die zeilenumbrüche, dynamisch dafür speicher allokiert und dann damit arbeiten kann, dass wenn ich zb. das sortierverfahren insertionsort habe ich mit dem entstandenen Feld arbeiten kann:


bsp: textdatei.txt

12 (soll gliech feld[0] sein)
133 (soll gleich feld[1] sein) ....
12
8
9



ich weiß es ist nicht in ordnung das ich hier darum bitte das ihr mir in diesen ausmaß helft, aber ich weiß sonst nichts mehr!Ich hoffe ihr könnt mir helfen!

mfg. max_88
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
10.05.2005, 18:53 Uhr
0xdeadbeef
Gott
(Operator)


Aaaalso, mal ganz langsam.

1. Wie sieht die einzulesende Datei denn aus?
2. Zeig mal her, was du in den zwei Wochen so zustandegebracht hast.
--
Einfachheit ist Voraussetzung für Zuverlässigkeit.
-- Edsger Wybe Dijkstra
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
10.05.2005, 19:11 Uhr
~max_88
Gast


die datei ist eine editordatei: und ich arbeite unter windows XP professional mit dem Borland C++ Builder 4

zb: text.txt mit inhalt

2
5
18
25

und das soll dan so angesprochen feld[0] soll 2 sein, feld[1] soll 5 sein und so halt... und ich muss mit dem arbeiten können. Bei meiner jetzigen lösung funktioniert es nicht. es liest es zwar heraus, aber wenn ich das feld an mein unterprogramm, also dan den sortieralgorithmus übergebe gibt es nur **** aus.




C++:
    //durchsuchen der Datei, um zu wissen wieviele zeichen benötigt werden
    fseek (datei, 0, SEEK_END); //Der Dateizeiger wird an das Ende gesetzt
    groesse = ftell(datei);     //Die Position wird als groesse gespeichert
    rewind(datei);              //die datei wird geschlossen und wieder geöffnet

    zeichenfeld =(char *) malloc(groesse);  //Speicherallokation für das Feld "zeichenfeld"
    index = 0;
    int zaehler=0;
    while(1)                                //Endlosschleife mit Abbruchbedingung zur Speicherung
    {
        zaehler++;                          //der einzelnen zeichen in der Datei
        int c = fgetc (datei);              //das Zeichen wird auf c gelegt
        if (c == EOF)                       //Abbruchbedingung wenn das Dateiende ereicht ist
            break;
        zeichenfeld[index++] = (char)c;  

//Speicherung der Zeichen in das dafür vorgesehene Feld
    }



das ist die lösung die mir ein anderes forum vorgeschlagen hat. Ich habe es zuerst mit sscanf probier aber auf keinen grünen zweig gekommen!

ich hoffe ihr könnt mir helfen!!

mfg. max
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
10.05.2005, 19:26 Uhr
~max_88
Gast


ach ja und ich programmiere in C, falls das nicht ersichtlich ist
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 <     [ C / C++ (ANSI-Standard) ]  


ThWBoard 2.73 FloSoft-Edition
© by Paul Baecher & Felix Gonschorek (www.thwboard.de)

Anpassungen des Forums
© by Flo-Soft (www.flo-soft.de)

Sie sind Besucher: