Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » Auslesen einer Datei und Darstellung auf Bildschirm.....wie?

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 < [ 2 ]
000
26.10.2005, 17:00 Uhr
candyman2000



Hallo,

ich würde gerne wissen, wie ich eine bestimmte Datei

z. B.

Test.txt

die in einem Verzeichnis meiner Wahl abgelegt ist, auslesen kann und dann eine Darstellung des Inhalts bzw. Textes auf dem Bildschirm bekommen kann.

Folgender Code ist bekannt:


C++:

# include <fstream>

ifstream = input filestream
fstream "c:\test.txt"
c:\test.txt open




Ist das soweit korrekt oder muss ich gar keine Dateinamen angeben.

Bitte um Mithilfe.....

Wäre dankbar.
--
Nobody´s perfect
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
26.10.2005, 17:11 Uhr
Spacelord
Hoffnungsloser Fall



C++:
#include <iostream>
#include <fstream>
#include <string>
using namespace std;

int main()
{
    string str;
    ifstream istr("C:\\Test.txt");
    while(getline(istr,str)!=0)
        cout<<str<<endl;
    istr.close();

    return 0;
}


Ich muss dir leider dringend ein C++ Einsteigerbuch empfehlen.
Dein Code entspricht nichtmal im Ansatz der C++ Syntax .

MfG Spacelord
--
.....Ich mach jetzt nämlich mein Jodeldiplom.Dann hab ich endlich was Eigenes.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
26.10.2005, 17:26 Uhr
candyman2000



Ich hätte schreiben sollen, dass ich noch so ziemlich Anfänger darin bin.
Danke trotzdem für deine schnelle Hilfe.
Ein Freund von mir, der sich eigentlich damit auskennen sollte, da er selbst programmiert, hat mir auch nur einen Teilcode mitgegeben,.....was ich eigentlich eher weniger erwartet hätte. Bücher habe ich wohl folgende:

Autor:
Thomas Hagemann

Titel: C++ Programmierung

Autor 2: Kate Gregory

Titel 2: Visual C++ Kompendium

Der obige war übrigens der Code, den ich bekommen hatte.

using namespace und return 0; war klar,

sorry, nur vergessen, hinzuzufügen.

Besten Dank
--
Nobody´s perfect
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
26.10.2005, 17:33 Uhr
Spacelord
Hoffnungsloser Fall


Wir haben ja alle mal angefangen .

MfG Spacelord
--
.....Ich mach jetzt nämlich mein Jodeldiplom.Dann hab ich endlich was Eigenes.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
27.10.2005, 07:54 Uhr
Taelan



btw: Falsches Forum ^^ (macht aber denk ich nix, kann man als Anfänger eh nicht so einschätzen ob das jetzt MFC oder c/c++ ist)

aber für die Zukunft mal hier die MFC Lösung für Textfiles:

C++:
    //es existiert ein CEdit mit Control: m_Edit

    CStdioFile file("ReadMe.txt",CFile::modeRead); //CFile::modeRead weil wir ja nicht schreiben wollen

    CString temp = _T(""); //das _T("") ist eigentlich nicht nötig, soweit ich weiss aber
    CString str = _T("");  //manchmal meckert der compiler wenn manns nicht macht

    //ReadString gibt null zurück wenn nichts mehr gelesen werden kann
    //Ansonsen gibt es eine ganze Zeile des Textes zurück und speichert ihn in str
    while(file.ReadString(temp) != NULL)
    {
         str += temp + "\r\n"; //hängt ein Zeilenende an den String
    }
    
    m_Edit.SetWindowText(str);
    UpdateData();
    file.Close();

 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
28.10.2005, 00:39 Uhr
candyman2000



@Taelan

Wo hätte ich es denn eigentlich hineinschreiben müssen? Aha....ich sehe....MFC.......

Super,

Danke für die schnelle Hilfe.

PS: Meinst du, das hätte ich als Anfänger hinbekommen müssen?

Wenn ich Fragen habe, kann ich sie dann weiterhin posten? Ich weiß halt nur wahrscheinlich nicht so richtig, in welches Forum sie dann eigentlich hinein müssen, ich hoffe, das macht nicht SO viel aus.

PPS: ich dachte, da da stand, VC++/MFC müsste das hier hinein.
--
Nobody´s perfect

Dieser Post wurde am 28.10.2005 um 00:41 Uhr von candyman2000 editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
28.10.2005, 09:45 Uhr
Taelan




Zitat von candyman2000:

Wo hätte ich es denn eigentlich hineinschreiben müssen? Aha....ich sehe....MFC.......



Zitat von candyman2000:

Wenn ich Fragen habe, kann ich sie dann weiterhin posten? Ich weiß halt nur wahrscheinlich nicht so richtig, in welches Forum sie dann eigentlich hinein müssen, ich hoffe, das macht nicht SO viel aus.

PPS: ich dachte, da da stand, VC++/MFC müsste das hier hinein.



Also mich störts nicht, wenn die Mods es verschieben is das was anderes aber du kannst natürlich weiter fragen stellen.

Das Forum hier ist für das Framework MFC (Microsoft Foundation Classes)
eigentlich hätte es ins c/c++ ANSI Forum gemüsst (denk ich^^), aber wie gesagt halb so wild


Zitat von candyman2000:

PS: Meinst du, das hätte ich als Anfänger hinbekommen müssen?


Das beinhaltet das wort "Anfänger" das man nicht alles selbst hinbekommen muss, vorallem weil ich mich selbst noch dazu zähle

wichtig ist eigentlich nur das du selbst drüber nachdenkst bevor du postest und vorher mal im Forum schaust ob die Frage im Forum schon gestellt und beantwortet wurde, dann nimmt dir keiner ne Frage übel. (Soll keine Anspielung auf irgendwas sein, um dem Gedanken mal vorzugreifen)
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
28.10.2005, 11:57 Uhr
candyman2000



Ich habe jetzt immer noch ein Problem,

und zwar ist hier mal das Log für die Erstellung:


Zitat:

Kompilierung läuft...
Brüche.cpp
gtestprogramme\test_andi\brüche.cpp(15) : fatal error C1004: Unerwartetes Dateiende gefunden
Fehler beim Ausführen von cl.exe.

Brüche.exe - 1 Fehler, 0 Warnung(en)




Ich weiß absolut überhaupt nicht, warum er einen Fehler beim Ausführen von cl.exe anzeigt. Was hat es mit dieser Datei auf sich, hab ich da irgendetwas falsch gemacht?

PS: Ähm, der Smile gehört da nicht hinein, ich habe die Meldungen aus dem Logfenster kopiert. Ich weiß nicht, was er da sucht, ich habe ihn nicht eingefügt.

Das ist übrigens bei Code, den ich aus den Lehrbüchern nehme, nicht so, das er sagt, er hätte einen Fehler beim Ausführen von cl.exe.....finde ich komisch...
--
Nobody´s perfect

Dieser Post wurde am 28.10.2005 um 12:03 Uhr von candyman2000 editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
28.10.2005, 14:46 Uhr
candyman2000



Ich habs geschafft, zumindest so zu 99,9 %...hoffe ich......

Der folgende Code hat jetzt Abhilfe geschaffen:


C++:
#include <stdio.h>

void main()
{
    FILE *f;
    int c;
    char filename [255];
    printf("%s\n", "Bitte einen Dateinamen eingeben:");
    gets(filename);

    f= fopen(filename, "r");

    while ( (c=fgetc (f)) !=EOF)
    {
        putchar(c);

    }
    fclose(f);
}




Im Code ist kein Fehler, jedoch sagt er mir nachdem ich den Dateinamen eingegeben habe:

Debug Assertion Failed

und dann, nachdem ich OK gedrückt habe, noch eine die heißt

Unknown Software Exception

Was ist da los?
--
Nobody´s perfect

Dieser Post wurde am 28.10.2005 um 14:54 Uhr von candyman2000 editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
28.10.2005, 21:07 Uhr
Spacelord
Hoffnungsloser Fall


Vermutlich schlägt fopen fehl.
Diesen Fall solltest du abfangen.

C++:
#include <stdio.h>

int main()
{
    FILE *f;
    int c;
    char filename [255];
    printf("%s\n", "Bitte einen Dateinamen eingeben:");
    gets(filename);

    if((f= fopen(filename, "r"))==NULL)
    {
        printf("Fehler beim Oeffnen der Datei.");
        return -1;
    }

    while ( (c=fgetc (f)) !=EOF)
    {
        putchar(c);

    }
    fclose(f);
    return 0;
}


Ich dachte du wolltest C++ lernen? Das ist C.
Die Funktion main hat int als Rückgabewert nicht void.

Ach ja....cl.exe ist der Compiler.

MfG Spacelord
--
.....Ich mach jetzt nämlich mein Jodeldiplom.Dann hab ich endlich was Eigenes.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
Seiten: > 1 < [ 2 ]     [ VC++ / MFC ]  


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: