Witam,
Mam plik kodowany w UTF-8 z polskicmi znakami. Mam w nim zapisane slowa - kazde w nowym wierszu:

plik
miś
instrukcja

Chcę napisca program, ktory odczyta ten plik i zapisze mi kazde slowo od konca w nowym pliku.
Niestety problem mam z polskimi znakami. Na poczatku wczytywalam fstream'em, ale okazalo sie ze zapisywalo mi krzaki do pliku wyjsciowego. Teraz znalazłam cos takiego jak wfstream oraz wstring operuja na dwubajtowych char'ach (wchar_t).

  wstring mystring;
  odczyt >> mystring;

  for (int i = mystring.size() -1; i != -1 ; i--)
  {
                zapis << mystring[i];
  }
   

Komilujac i uruchamijac kod powyzej otrzymalam krzaki w miejscu polskich liter. Stało sie tak dlatego, poniewaz dla slowa 'miś' pod wykonaniu instryukcji odczyt >> mystring; rozmiar mystringa wynosi 5! a nie 3 - i przy zapisywaniu slowa od tylu bajty w dwubajotowym znaku polskim zamienija sie miejscami mi . Dlaczego rozmiar mystring wynosi 5 skowo operuje na wstringu (skladajkacego sie z wchar_t, ktore sa dwubajtowe) ? Prosze pomozcie, juz siedze na d tym bardzo dlugo i zaczynam w siebie powoli watpic...