Rails cross platform problem

My Rails working on a Linux system and a client access this server from
Windows. The client inputs something in a text area and click submit, in
the server side, it put the input into a file. The problem is that at
the end of each line in the file, there is a “^M”. How can I avoid this?
I use File.puts method to write to the file.

thanks.

This is related to the fact that on *nix the default end of line
character is \n, and on windows, it’s \r\n (note that this is not Ruby
specific, but platform specific - Ruby is just following along).

There’s a utility on unixes called unix2dos which you can use to
substitute all \n characters to \r\n, or if you need to stay in Ruby-
land, use gsub with something like gsub!(/\n/,"\r\n").

Hope that helps,
-H

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs