[CMD]Kodowanie znaków


(Kamilmlody5) #1

Witam.

Zżera mnie ciekawość prawdziwego kodowania CMD. Sam za bardzo nie wiem jak to nazwać. Otóż mam taki oto znak unicode: █ . Gdy zapisuję go normalnie w edytorze i go ponownie odczytam wygląda inaczej. Jeżeli zmienię kodowanie na unicode, wszystko działa jak należy. Lecz chcę, aby ten znak był wyświetlany w wierszu poleceń(np.: dla potrzeb grafiki). Gdy uruchomię skrypt z tym znakiem, z kodowaniem unicode, wyświetla mi krzaki. Gdy wkleję na sztywno ten znak ze schowka, znak wyświetla się poprawnie. I mam pytanie: w jakim kodowaniu zapisać skrypt, aby znaczek został zachowany i poprawnie pokazany w konsoli?

Doszedłem do rozwiązania,lecz mnie to nie usatysfakcjonowało. Gdy wpisuję:

echo █>>skrypt.cmd

I uruchomię zapisany skrypt, to znak zostaje wyświetlony poprawnie. Patrząc na zawartość zapisu tego pliku w edytorze, znak jest zmieniony na: Ű .Bawiłem się w przeróżne kodowania, lecz nie znalazłem rozwiązania.

Zna ktoś odpowiedź z mojego dochodzenia? :wink:


(cinkibolek) #2

Więc sobie ustaw czcionkę konsoli unicodową, bo pewnie jest inna.


(Kamilmlody5) #3

To nie jest dla mnie rozwiązanie problemu. Nie każdy na komputerze w konsoli ma ustawioną czcionkę unicodową.


(cinkibolek) #4

Spróbuj w pliku bat dodać na górze

chcp 65001

U mnie zadziałało, aczkolwiek mam czcionkę zmienioną.

Tutaj znalazłem ten myk z chcp


(mucha090) #5

Prosze a o to cudo które mi uratowało tyłeczek:D mam nadzieje że rozchodzi się o polskie znaki diakrytyczne, jeśli tak to oddaje w wasze ręce te oto funkcje (wsumie to odnośnik do forum w którym ją zamieściłem:P)


(Kamilmlody5) #6

Nie chodzi mi tak naprawdę o polskie znaki, czy tam ruskie. Chodzi mi właśnie o robienie graficznych wstawek w batch. Jestem tylko i wyłącznie ciekaw dlaczego cmd zmienia znak z █ na Ű.