相关疑难解决方法(0)

使用Haskell的Parsec来解析ByteString

我已经设法使用Parsec来解析一个String,但是无法用ByteString来做同样的事情.

如何让Parsec与ByteStrings一起使用而无需手动将它们转换为字符串?

我觉得这不难实现.我错了吗?(我是Haskell的新手.^^)

谢谢!

haskell parsec bytestring

6
推荐指数
1
解决办法
2545
查看次数

ByteString采用ISO-8859-1?

Data.ByteString.hGetContents的文档说

与hGet一样,文件中的字符串表示形式假定为ISO-8859-1.

为什么它必须"假设"任何关于"文件中的字符串表示"的内容?数据不一定是字符串或编码文本.如果我想要处理编码文本,我会使用Data.Text或者Data.ByteString.Char8.我认为ByteString的重点是数据是作为8位字节的列表处理的,而不是文本字符.假设ISO-8859-1的影响是什么?

haskell bytestring

5
推荐指数
1
解决办法
221
查看次数

GHC截断Unicode字符输出

我不能让GHCi或GHC打印unicode代码点221A(sqrt符号:√).

我不认为这是我的shell,因为我可以得到ruby:

irb> puts "\u221A"
?
Run Code Online (Sandbox Code Playgroud)

GHC/GHCi是另一个问题:

ghci> putStrLn "\8730"

ghci> withFile "temp.out" WriteMode $ flip hPutStrLn "\8730"
ghci> readFile "temp.out"
"\SUB\n"
Run Code Online (Sandbox Code Playgroud)

那么我做错了什么?

(GHC v6.l0.3)

unicode haskell ghc

3
推荐指数
1
解决办法
905
查看次数

标签 统计

haskell ×3

bytestring ×2

ghc ×1

parsec ×1

unicode ×1