2011-01-13 2 views
2

Ich weiß, dass Sie Dir.entries('.', {:encoding => 'utf-8'}) tun können, und es funktioniert ordnungsgemäß, aber ich kann keine Möglichkeit finden, die Codierung zu erzwingen, wenn Sie Find.find tun. Unter Windows liest die erste Methode den Dateinamen 舦 舨 .txt korrekt, und File.file? für den Wert gibt true zurück. Allerdings macht Find.find kehrt ??. Txt, obwohl Ruby sagt, seine Codierung ist utf-8. Außerdem gibt File.file?false zurück.Ruby 1.9.2 Find.Find Encoding

Gibt es keine Möglichkeit, die Codierung auf Find.find zu setzen?

+0

FYI, scheint auf Linux zu arbeiten: Find.find ("舦 舨 .txt") {| f | legt File.file? f} => wahr –

Antwort

0

Statt

Find.find(dir) 

Ich fand

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

arbeitet