Files?

W

Wilson Bilkovich

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 "<html>"
file.puts "<head>other stuff</head>"
# 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.
 
M

Mike Harris

Jonathan said:
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]

thanks :)
File.open("g:/Ruby/myFile.html",File::WRONLY|File::CREAT) do |f|
f << "<html>"
f << "<body>
f << "Hello World"
f << "</body>"
f << "</html>"
end

?
 
O

obrien.andrew

Well, there are a couple of ways to do that depending on what you're
planning on doing with the file. Can you give some of the code you're
trying? Or errors?
 
J

Joe Bacigalupa

#opening a file for writing
my_file = File.new('g:/ruby/myFile.txt', 'w')
# if you tried to open the file like this and the file didn't exist
already this would fail
my_file = File.new('g:/ruby/myFile.txt', 'r')

The modes are platform dependant - I'm assuming Windows.
 
J

Jonathan Denni

Wilson said:
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.

It worked! Thank you very much. is this one of the books you are talking
about?
http://www.ruby-doc.org/docs/ProgrammingRuby/
also, is Ruby for Rails available to read online like the Pragmatic
Programmer's Guide, or do I have to buy it?

thanks again
 
W

Wilson Bilkovich

It worked! Thank you very much. is this one of the books you are talking
about?
http://www.ruby-doc.org/docs/ProgrammingRuby/
also, is Ruby for Rails available to read online like the Pragmatic
Programmer's Guide, or do I have to buy it?

thanks again

That's the book, but it's the 1st edition, and doesn't cover Ruby 1.8.
I highly recommend purchasing the the 2nd edition. You can buy it as
hardcopy or PDF.
http://pragmaticprogrammer.com/titles/ruby/index.html

This is the other book that I highly recommend:
http://www.manning.com/black/
..also available as hardcopy or PDF.

If I had to pick one, I would choose 'Ruby for Rails'. Luckily, they
are both pretty affordable as programming books go.
 

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

Forum statistics

Threads
474,213
Messages
2,571,109
Members
47,702
Latest member
gancflex

Latest Threads

Top