我想编写一个简单的函数,将 ByteString
按照 '\n'
作为分隔符将其拆分成 [ByteString]
。下面是我的尝试:
import Data.ByteString
listize :: ByteString -> [ByteString]
listize xs = Data.ByteString.splitWith (=='\n') xs
这会抛出一个错误,因为'\n'
是一个Char
而不是一个Word8
,而Data.ByteString.splitWith
期望的是Word8
。
如何将这个简单的字符转换为ByteString
可以处理的Word8
?
ord
函数来查找字符的编码数字 :) 我通常从fileformat.info获取Unicode数据; 基本拉丁字符块包含了从ASCII继承下来的128个代码点。 - ehirdText
就可以正常工作。然而,如果字符串始终是纯 ASCII,并且你正在处理大量数据,则ByteString
可能更快。 - ehird