【发布时间】:2011-09-01 07:26:42
【问题描述】:
在 ruby 1.8.7 中,什么决定了File#path 的编码是什么?文件系统?某处的配置?每个单独文件的编码?
我在不同操作系统上的其他相同环境中看到了两种不同的编码。
相关问题:Reading filename in multiple OS without encoding problem with Ruby
更新
我想我需要设置/知道文件系统的编码......但这并没有帮助(除非我把它放在错误的地方)......
导出 LC_ALL=en_US.UTF-8 导出 LC_CTYPE=en_US.UTF-8【问题讨论】:
-
我不知道
File#name的方法。哪个模块包含这个?它既不在 Ruby 1.8.7 核心中,也不在 fileutils 模块中。 -
哎呀!累了的大脑...
File#path...现在修复 -
它似乎返回从 FS 接收到的原始字节字符串。要正确解释它,您需要知道文件系统的编码,例如使用 iconv 来翻译它(如您所指的帖子所示)
标签: ruby character-encoding filesystems