tokenizer für wstring
-
Hallo,
ich habe nicht viel Ahnung von C++ und noch weniger Ahnung von wstrings. Ich bräuchte einen Unicode string tokenizer.
Mein erster Ansatz sieht wie folgt aus:
typedef std::wstring str_type; std::vector< str_type > tokenize( const str_type & content ) { str_type s = content; std::wstringstream ss( RemoveMultipleEmptySpaces( s ) ); std::vector< str_type > substr; while( std::getline( ss , s , L" " ) ) { substr.push_back( s ); } return substr; }
Mit stringstream geht alles einwandfrei durch. sobald ich das typedef in wstring ändere geht getline nicht. Der Fehler ist:
C2672: 'std::getline': no matching overloaded function found Woran liegt es?
Wie müsste ich es an wstring anpassen?
-
wstring
brauchtwstringstream
. Schau mal ob das bei dir so passt.
-
Der dritte Paramter in
getline
muss einwchar_t
und keinwchar_t[]
sein.
Allgemein kannst Du schreiben:while( std::getline( ss , s, str_type::value_type(' ') )
-
-
Super, Besten Dank!