On 30.03.2007 03:21, Bret Pettichord wrote: > I just had to work on some code that ran into trouble, because Ruby > uses "/" to separate folders, but the path was being passed to a > separate command (using system) that expected Window's paths to use > "\". > > C:\Users\bret>irb > irb(main):001:0> File.join "foo", "bar" > => "foo/bar" > irb(main):002:0> > > I told my collegues that instead of using File.join, they should just > use + "\\" + I'd probably rather use ["foo", "bar"].join File::SEPARATOR (if that's set to \\ on Windows). > But this got me to wondering what the point of File.join was if you > couldn't trust it to construct paths correctly (unless you were sure > that the path was only going to be used by other ruby commands). Exactly. File.join produces paths that Ruby can correctly use. That's the rationale. > Is there a rationale? Is there a different library that i should be > using instead? Well, you could do path.tr '/', '\\' before passing the path to some other process. Kind regards robert