首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Haskell中二进制文件中字符串的解析

Haskell中二进制文件中字符串的解析
EN

Stack Overflow用户
提问于 2015-10-10 23:58:27
回答 1查看 90关注 0票数 0

我正在使用Data.Binary.Get monad从Haskell中的文件中读取数据。我将如何将从getWord32 32**获取的一些Word32转换成一个字符或字符串?

我尝试过将Word32分解成四个八位数,并以这种方式进行转换,但我在转换工作上遇到了困难。如何最好地将Word32转换为字符串(假设有四个字符)。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2015-10-11 00:42:02

utf8 8-光有一个名为w2c函数的函数,其类型为:

代码语言:javascript
复制
w2c ::Word32 -> Char

可以看到它是如何实现的:

代码语言:javascript
复制
w2c :: Word32 -> Char
{-# INLINE w2c #-}
#if defined(__GLASGOW_HASKELL__)
w2c (W32# w) = C#(chr#(word2Int# w))
#else
w2c = unsafeChr . fromIntegral
#endif

您可以在它周围编写一个包装器:

代码语言:javascript
复制
w2s :: Word32 -> String
w2s xs = [xs]

或者,您也可以使用show函数,因为Word32有一个实例。但我想,这会有表现上的损失。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/33060220

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档