我有一个代码
module Main where
import Text.Printf
main = printf "%s%s" ("Content-type: text/html; charset=utf-8\n\n" :: String ) ("And немного русского" :: String)
如果我在终端执行它,我有我想要的:
Content-type: text/html; charset=utf-8
And немного русского
但是当我尝试将它作为 cgi 程序执行时,我只是And
(因为在这个词之后我有西里尔字符并且它们不想被显示)。
putStr $ fromString
当我使用from Data.ByteString.Char8
and时没有问题,Data.ByteString.UTF8
所以我不认为我的 LAMPP 服务器有问题。而且我还包含AddDefaultCharset utf-8
在 httpd.conf 中。
而我真正想要做的是读取带有特殊符号(例如等)的模板文件%s
,%d
然后在 的帮助下printf
,将它们(符号)替换为我需要的,具体取决于查询字符串和显示。
我这样做只是为了好玩,我希望这个问题只能用纯 Haskell 来解决。