Zapisanie znaków konsolowych do txt

0

Siemka,
Mam napisany program, który losuje drabinki walk na zawodach sportowych. Znalazłem na necie kod dzięki któremu wynik bardzo ładnie prezentuje się w konsoli:
title

Potrzebuję dokładnie taki sam schemat zapisać do pliku .txt. Niestety kończy się to tak:
title

Domyślam się, że chodzi o inne kodowanie konsoli (Qt Creator) oraz notatnika.
Jak osiagnąć zamierzony efekt?

Z góry dzięki :D

0

A jak w kodzie wygląda wyświetlanie poszczególnych znaków? Na przykład tych kresek?

0

Ale co to za "notatnik"? Bo ten domyślny windowsowy to chyba nie bardzo wspiera jakieś inne kodowania ;]

0

W notepad++ możesz zmienić na zestaw znaków OEM 852.

1
Silv napisał(a):

A jak w kodzie wygląda wyświetlanie poszczególnych znaków? Na przykład tych kresek?

void Drabinka::printplik(string sp, string sn,Drabinka *v, string plik_z)
{

  string s;
  string cr,cl,cp;

  cr = cl = cp = "  ";
    cr[0] = 218; cr[1] = 196;
    cl[0] = 192; cl[1] = 196;
    cp[0] = 179;

    ofstream plik;
    plik.open(plik_z.c_str(),ios::app);
    if(plik.good())
    {

  if(v)
  {
    s = sp;
    if(sn == cr) s[s.length() - 2] = ' ';
    printplik(s + cp, cr, v->one,plik_z);

    s = s.substr(0,sp.length()-2);
    plik << s << sn;

    if(v->baza!=NULL)
        plik<<v->baza->imie<<'\t'<<'\t'<<v->baza->dojo;
    else
       plik<<"0";

    plik<<'\n';

    s = sp;
    if(sn == cl) s[s.length() - 2] = ' ';
    printplik(s + cp, cl, v->zero,plik_z);
  }
    }

return;
}
0

Źle zadałem pytanie. Chodzi mi generalnie o to, żeby zapisać wyniki losowania do pliku, żeby wyglądało faktycznie jak drabinki i żeby była możliwość wydrukowania na kartkę papieru. To wcale nie musi być notatnik ani plik .txt.
Nie wiem nawet za bardzo jak się zabrać za to bo jestem zielony w temacie, nakierujcie mnie w dobrą stronę :D

0

@zyrox kodowanie w konsoli cmd Windowsa jest inne niż używasz w takim notatniku. CMD używa kodowania CP852. Problem jest taki, że znaki o które Ci chodzi pochodzą z rozszerzonego zestawu ASCII, czyli w każdym kodowaniu mogę być inne. O ile dobrze kojarzę, to w Win1250 znaczków za pomocą których rysujesz ramki.... nie ma :) Żeby temu zaradzić przejdź na Unicode i zapisuj pliki tekstowe w tym formacie.

1 użytkowników online, w tym zalogowanych: 0, gości: 1