Windows, Dir class and special characters

P

Peter John

Hi,

I'm using ruby 1.9.1 on windows 7 x64. If I manually make a few test
files that have Polish characters in their names, e.g. testżłś.txt, and
then use the Dir class to get a directory listing, I find that the
incoming encoding is Windows-1252 and that the filenames have lost their
special characters - e.g. it would look like testzls.txt inside ruby.

I've spent the larger part of the day reading up on all the encoding
stuff in 1.9.1, tried things like

# encoding: utf-8

and so on with no success. How do I get into ruby the filenames that
show up in windows with Polish, Chinese, or Russian characters? Would be
even better to find a method that works universally on Windows / Mac /
Linux platforms.
 
B

Brian Candler

Peter said:
I'm using ruby 1.9.1 on windows 7 x64. If I manually make a few test
files that have Polish characters in their names, e.g. testżłś.txt, and
then use the Dir class to get a directory listing, I find that the
incoming encoding is Windows-1252 and that the filenames have lost their
special characters - e.g. it would look like testzls.txt inside ruby.

People have reported that 1.9.2 is better in this area, so you could
give that a go. Unfortunately 1.9.2 isn't released yet, but there's a
1.9.2-preview3 you could try, and report back on.

Alternatively, switch to ruby 1.8.7 where you don't have to deal with
this encoding business at all, and your filenames will be returned to
you as pristine and unmangled byte strings.
 

Ask a Question

Want to reply to this thread or ask your own question?

You'll need to choose a username for the site, which only take a couple of moments. After that, you can post your question and our members will help you out.

Ask a Question

Members online

No members online now.

Forum statistics

Threads
473,982
Messages
2,570,185
Members
46,736
Latest member
AdolphBig6

Latest Threads

Top