From: Wilson Bilkovich Date: 2006-09-29T00:38:08+09:00 Subject: Re: Files? On 9/28/06, Jonathan Denni wrote: > I'm getting quite lost and discouraged trying to learn Ruby. [I have no > programming experiance, just html and css] > > for something to start with, I would like to use ruby to create a file > in directory G:\Ruby named "myFile.html" > > that seems simple enough, but I can't figure out how to do it [and > http://www.ruby-doc.org/docs/ProgrammingRuby/html/tut_io.html isn't > helping] > On Windows, you have basically two choices for dealing with directory names and paths. 1. You can use backslashes, like Windows expects. \ has special meaning in Ruby strings, so you need to type it as \\. e.g. "g:\\Ruby" 2. You can use forward-slashes, which Ruby will convert to the appropriate thing on your platform. #2 is a better choice, because #1 causes your code to be basically Windows-only. Example code: (There are many, many ways to do this. This is just one of them.) You can either type this in after running the 'irb' command, or put it in a file called 'example.rb', and run it with: ruby example.rb Dir.chdir "g:/Ruby" puts "Now we are in: #{Dir.pwd}" File.open('my_file.html', 'w') do |file| file.puts "" file.puts "other stuff" # etc, etc, etc. end The section betewen the 'do' and the 'end' is called a block. In this case, Ruby will automatically make sure the file is closed for you when leaving the block. Convenient, because it saves you a whole bunch of error checking. I recommend that you pick up 'Ruby for Rails', and 'Programming Ruby, 2nd Edition' (a.k.a. The Pickaxe) to help get you started. Even if you aren't interested in Rails, don't be put off by the title of 'Ruby for Rails'. It is an excellent book that just happens to use Rails as its example code.