Word8 から Text に変換する最良の方法を探しています。問題は、Heist に runChildrenWithText 関数を使用するとバインディングにテキスト入力が必要になることですが、getParam 機能は Word8 に変換できる ByteStrings を返しますが、これらの形式のいずれかからの Text は返しません。 、そのため、ここからどこへ行くかを決めるのに苦労しています。これを解決するための最良の方法に関する助けをいただければ幸いです。
質問する
477 次
1 に答える
5
このData.Text.Encodings
パッケージには、 を に変換する多くの方法がありByteString
ますText
。ByteString
toText
エンコーディングが失敗する可能性があることに注意してください(たとえば、 に UTF-8 データが含まれていると想定してByteString
いますが、実際にはそうではありません) convert :: ByteString -> Text
。
つまり、decodeUtf8 :: ByteString -> Text
不純な例外がスローされるためdecodeUtf8' :: ByteString -> Either UnicodeException Text
、デコードに失敗する可能性がある場合に適している可能性があります。
decodeUtf8With :: OnDecodeError -> ByteString -> Text
と を使用して、より洗練されたデコード失敗ハンドラー スキームを構築することもできますData.Text.Encodings.Error
。
于 2013-07-30T16:37:05.580 に答える