2011-01-13 189 views
2

我知道你可以做Dir.entries('.', {:encoding => 'utf-8'}),它可以正常工作,但我無法找到任何方式來強制編碼時做Find.find。在Windows上,第一種方法正確讀取文件名「舦舨.txt」,並且對該值執行File.file?返回true。但是,儘管ruby說它的編碼是utf-8,但是Find.find返回?? txt。另外,File.file?返回false紅寶石1.9.2 Find.find編碼

有沒有辦法在Find.find上設置編碼?

+0

僅供參考,似乎在Linux上工作:Find.find( 「舦舨.TXT」){| F |放File.file? f} => true – 2011-02-02 21:03:45

回答

0

而不是

Find.find(dir) 

我發現

Find.find(dir.encode('utf-8')) 

工作