Herzlich Willkommen, lieber Gast!
  Sie befinden sich hier:

  Forum » VC++ / MFC » Textdatei in listbox

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
27.03.2006, 22:06 Uhr
simu



Hallo

Ich möchte eine Textdatei in eine listbox schreiben.
Beim Abfüllen in die listbox bekomme ich immer einen Fehler:

error C2664: 'int System::Windows::Forms::ListBox::ObjectCollection::Add(System::Object ^)': Konvertierung des Parameters 1 von 'char [1000]' in 'System::Object ^' nicht möglich

Kann mir jemand sagen was an meinem Code falsch ist?


C++:
            FILE *stream;
            errno_t err;
            err = fopen_s(&stream, "C:\\adressbuch.txt", "r");
            
            char buffer[1000];
            
            while(!feof(stream))
            {
                // Zeilenweise in buffer speichern
                fgets(buffer,sizeof(buffer),stream);

                // Abfüllen in listbox
                m_adressen->Items->Add(buffer);
            }




Ich benütze seit kurzem Microsoft Visual C++ 2005 Express Edition.

Vielen Dank!
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
001
27.03.2006, 22:14 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


wenn er nicht mag geh den umweg über nen CString...
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
002
27.03.2006, 22:23 Uhr
simu



wie meinst du umweg über cstring?
hab das gleiche mit Visual Studio 6.0 gemacht und da hats funktioniert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
003
27.03.2006, 22:27 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)



C++:
.
.
.
CString str = buffer;

m_adressen->Items->Add(str);    //oder wenn er nen charpointer will str.GetBuffer(0)


hoffe das funzt...
--
...fleißig wie zwei Weißbrote
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
004
27.03.2006, 22:34 Uhr
simu



jetzt bekomme ich folgende fehlermeldungen:

dvisual studio 2005\projects\sms\sms\Form1.h(46) : error C2065: 'str': nichtdeklarierter Bezeichner
dvisual studio 2005\projects\sms\sms\Form1.h(46) : error C2065: 'buffer': nichtdeklarierter Bezeichner
dvisual studio 2005\projects\sms\sms\Form1.h(51) : error C2070: ''unknown-type'': Ungültiger sizeof-Operand

ich hab wohl noch nicht alles eingebunden.

#include<fstream>
#include<iostream>
#include <stdio.h>
#include <string>
#include <tchar.h>

weist du vileicht was da noch fehlt?
danke für deine antwort...
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
005
27.03.2006, 22:48 Uhr
Windalf
Der wo fast so viele Posts wie FloSoft...
(Operator)


ich meinte damit zu versuchen das in dem von dir geposteten codeteil hinzuzufügen...


C++:
            FILE *stream;
            errno_t err;
            err = fopen_s(&stream, "C:\\adressbuch.txt", "r");
            CString str;
            
            char buffer[1000];
            
            while(!feof(stream))
            {
                // Zeilenweise in buffer speichern
                fgets(buffer,sizeof(buffer),stream);
                  
                str = buffer;

                // Abfüllen in listbox
                m_adressen->Items->Add(str);
            }


--
...fleißig wie zwei Weißbrote

Dieser Post wurde am 27.03.2006 um 22:49 Uhr von Windalf editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
006
27.03.2006, 22:56 Uhr
simu



das hab ich probiert, aber beim erstellen wird dann 'CString' als nichtdeklarierter Bezeichner angegeben.
ich schau das morgen nochmal an.
danke für deine antworten.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
007
28.03.2006, 17:34 Uhr
xXx
Devil


benutzt du überhaupt die Microsoft Foundation Class?! Oder zufällig nicht?! CString ist ne Klasse daraus
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
008
29.03.2006, 19:12 Uhr
simu



Ja ich benütze MFC.
Der Stringfehler hat sich erledigt, dafür hab ich das Problem beim schreiben in die listbox.


C++:
            FILE *stream;
            errno_t err;
            err = fopen_s(&stream, "C:\\adressbuch.txt", "r");
                        
            char buffer[1000];
            
            while(!feof(stream))
            {
                // Zeilenweise in buffer speichern
                fgets(buffer,sizeof(buffer),stream);

                std::string str(buffer);
                
                // Abfüllen in listbox
                m_adressen->Items->Add(str); //sollte doch so funktionieren
            }



Da erhalte ich folgende Fehlermeldung:

error C2664: 'int System::Windows::Forms::ListBox::ObjectCollection::Add(System::Object ^)': Konvertierung des Parameters 1 von 'std::string' in 'System::Object ^' nicht möglich

Was hab ich falsch gemacht?

Dieser Post wurde am 29.03.2006 um 19:13 Uhr von simu editiert.
 
Profil || Private Message || Suche Download || Zitatantwort || Editieren || Löschen || IP
009
29.03.2006, 20:53 Uhr
xXx
Devil


Hmm ganz einfach ... ein std::string ist was anderes als ein CString Du benutzt NICHT die MFC... du benutzt warscheinlich den Visual C++ Compiler... aber das sagt nicht das du die MFC benutzt das scheint was andesr zu sein...
 
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: