HASKELL: Читайте в специальных символах от консоли

Я хотел бы прочитать в строке с консоли, которая содержит специальные символы, такие как Ö, ä, ü, μ ... Я пробовал:

сделать ... TS <- GetLine ...

Но это не работает для тех характера. Например, Unicode для Ö IS \ 246, но если я использую GetLine для чтения в Ö haskell читает в "\ 195 \ 182", а Putstr "\ 195 \ 182" дает мне ã¶, который не .... В чем проблема здесь? Нужна ли мне еще одну функцию для чтения этих персонажей?

Я использую Winghci 7.0.3 на Windows XP. Я был бы рад, если кто-то может помочь мне, потому что я ничего не нашел.


@judah jacobson:

Я попробовал это снова, прежде чем набрать любые другие команды, и получил это:

Prelude> :m +System.IO
Prelude System.IO> hSetEncoding stdin utf8
Prelude System.IO> getLine
ασδφ
"\206\177\207\402\206\180\207\8224"
Prelude System.IO> putStr "\206\177\207\402\206\180\207\8224"
ασδφPrelude System.IO> 

Я также попробовал команду Windows CHCP 65001, но это ничего не изменило, у меня уже активировано UTF8 окна.

6
задан Alex 22 September 2011 в 07:47
поделиться