gpt4 book ai didi

haskell - Prelude.writeFile 带有中文文件名

转载 作者:行者123 更新时间:2023-12-04 05:49:57 27 4
gpt4 key购买 nike

我正在测试一些喜欢将内容输出到文件的东西,它有一个中文名称。

该文件将使用正确的内容而不是文件名成功创建。

我看看函数writeFile ^1它使用 String 表示文件名.
所以我怀疑这可能是根本原因。

    file :: FilePath
file = "上海万达影城.html"

content :: String
content = "<h1>hello</h1>"

write2File :: IO ()
write2File = writeFile file content

谢谢你的帮助!

-西蒙

- - - - - - - - - - - 更新
  • 我这边的 GHC 是 7.0.2
  • 升级前找到的解决方法。请参阅下面的详细信息,代码更改如下

    import qualified Codec.Binary.UTF8.String as UTF8
    file = UTF8.encodeString "上海万达影城.html"
  • 最佳答案

    String 是 Haskell 中的 unicode 代码点列表。该 Unicode 代码点列表的解释取决于系统。 (您还需要一个不太老的 GHC 来支持这一点)。

    通常,一旦您正确设置了语言环境,事情就会正常工作。

    注意过去有一些警告——例如旧错误:System.Directory.getDirectoryContents unicode support - 这可能涉及解决方法。

    关于haskell - Prelude.writeFile 带有中文文件名,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10191171/

    27 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com