Du bist nicht angemeldet.

Stilllegung des Forums
Das Forum wurde am 05.06.2023 nach über 20 Jahren stillgelegt (weitere Informationen und ein kleiner Rückblick).
Registrierungen, Anmeldungen und Postings sind nicht mehr möglich. Öffentliche Inhalte sind weiterhin zugänglich.
Das Team von spieleprogrammierer.de bedankt sich bei der Community für die vielen schönen Jahre.
Wenn du eine deutschsprachige Spieleentwickler-Community suchst, schau doch mal im Discord und auf ZFX vorbei!

Werbeanzeige

11

25.06.2007, 22:41

muss es mir morgen nochmal anschauen :D

aber wenn ich mich ned irre war bei wchar_t dass ich nen unsigned short für das zeichen einlesen verwendet habe und die while schleife, die bis EOF läuft, nie beendet wurde, da unsigned short vl die -1 oder was EOF ist falsch interpretiert kA :D

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

12

25.06.2007, 23:00

Benutz mal:

C-/C++-Quelltext

1
std::char_traits< wchar_t >::eof()
@D13_Dreinig

13

25.06.2007, 23:39

Quellcode

1
2
3
4
5
6
7
8
9
FILE* Map; 
  Map = fopen("Map.txt", "rb");

    unsigned short c;
    while((c = fgetc(Map)) != EOF)
        {
                std::wcout << (wchar_t)c;
                Sleep(200);
        }


das ist mein ansatz ... funzt irgendwie ned :(

so bin schlafen gut n8 :)

auch das funzt ned

Quellcode

1
2
3
4
5
6
7
8
9
FILE* Map; 
  Map = fopen("Map.txt", "rb");

    wchar_t c;
    while((c = fgetc(Map)) != EOF)
        {
                std::wcout << c;
                Sleep(200);
        }

14

26.06.2007, 01:55

Mein Ansatz wäre folgender:

C-/C++-Quelltext

1
2
3
std::wifstream file(dateiName);
std::wstring Source=std::wstring(std::istreambuf_iterator<wchar_t>(file),std::istreambuf_iterator<wchar_t>());
std::wcout << Source;
Mein Projekt: Rise of the Sylvan

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

15

26.06.2007, 08:18

Wenn dann:

C-/C++-Quelltext

1
std::string foo( std::istreambuf_iterator< wchar_t >( stream.rdbuf() ), std::istreambuf_iterator< wchar_t >() );
@D13_Dreinig

16

26.06.2007, 10:41

hm habs probiert, da sagt er,dass der erste parameter nicht in char* konvertiert werden kann. ich probier mal bischen weiter :D

C-/C++-Quelltext

1
2
3
std::wifstream file("Map.txt");
std::string Source( std::istreambuf_iterator< wchar_t >( file.rdbuf() ), std::istreambuf_iterator< wchar_t >() );
std::cout << Source;


Zitat

error C2664: '__thiscall std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> >::std::basic_string<char,struct std::char_traits<char>,class std::alloc
ator<char> >(const char *,unsigned int,const class std::allocator<char> &)' : Konvertierung des Parameters 1 von 'class std::istreambuf_iterator<unsigned short,struct std::char_traits<unsigned short> >' in 'const char *' nicht moeglich
Kein benutzerdefinierter Konvertierungsoperator verfuegbar, der diese Konvertierung durchfuehren kann, oder der Operator kann nicht aufgerufen werden
Fehler beim Ausführen von cl.exe.

David_pb

Community-Fossil

Beiträge: 3 886

Beruf: 3D Graphics Programmer

  • Private Nachricht senden

17

26.06.2007, 10:53

Hast du auch alle Header drin die du benötigst?
@D13_Dreinig

grek40

Alter Hase

Beiträge: 1 491

Wohnort: Dresden

  • Private Nachricht senden

18

26.06.2007, 10:53

come on... erst denken dann posten :roll:

string <> wstring ;)

// das ging an Draculark

19

26.06.2007, 11:01

also header hab ich die hier eingebunden

Quellcode

1
2
#include <iterator> 
#include <strstream> 


und was meinste mit string<>wstring? :D

also die variante

C-/C++-Quelltext

1
2
std::wstring Source( std::istreambuf_iterator< wchar_t >( file ), std::istreambuf_iterator< wchar_t >() );
    std::wcout << Source;


hab ich auch schon probiert,falls du das meintest:D dann ist halt die konvertierung in unsigned short* nicht mehr möglich.

zugegebenermaßen hab ich diese art von inputstreams noch nie verwendet:D

bis etz immer nur fopen,fgets,fgetc und halt den standard fstream vom buch. und dieses semester an der uni in java bischen mit inputstreams und outputstreams begonnen :D also wundert euch ned, wenn da für euch teilweise unsinniges zeug steht. für mich ergibt es sinn^

grek40

Alter Hase

Beiträge: 1 491

Wohnort: Dresden

  • Private Nachricht senden

20

26.06.2007, 11:20

Wenn du immer mit dem fgetc usw gearbeitet hast solltest du mal fgetwc() versuchen... weiß nur nich, ob es wirklich hilft^^

Und sorry wegen dem string - wstring... da hab ich mich echt vertan

Werbeanzeige