我写了一个Ruby脚本,它正在读取一个包含Unicode字符的文件(File.read()
),并且从命令行中可以正常运行。
然而,当我尝试将其放入Automator工作流程(Mac OS X)中时,我会收到以下错误信息:
2009-12-23 17:55:15 -0500: /Users/jeffreyaylesworth/bin/symbols:19:in `split': invalid byte sequence in US-ASCII (ArgumentError)
(traceback)
当从 Automator 运行时,split 突然不喜欢非 ASCII 字符。据我所知,两者都是从相同版本的 Ruby 运行(版本号相同)。
我并不太关心它们为什么表现不同(但如果有人知道,那就太好了),但我希望有一个解决方案来使 split 接受非 ASCII 字符。
如果有帮助的话,我需要将文本在单个字符处分割成两部分,所以如果有类似于 C 的 tokenizer 的东西,我可以使用它。