sepehr
September 8, 2009, 1:30pm
#1
when I use a string constant with File.exists? like the following ,it
works fine:
File.exists?("/home/sepehr")
but when I get the string from user:
path=gets
if File.exists?(path) then
end
it doesn’t work! what’s wrong with the string which is typed by the
user?
sepehr
September 8, 2009, 1:47pm
#3
Hi –
On Tue, 8 Sep 2009, Mehdi K. wrote:
user?
It ends with a newline. Try path.chomp.
David
–
David A. Black / Ruby Power and Light, LLC / http://www.rubypal.com
Ruby/Rails training, mentoring, consulting, code-review
Latest book: The Well-Grounded Rubyist (http://www.manning.com/black2 )
September Ruby training in NJ has been POSTPONED. Details to follow.
sepehr
September 8, 2009, 3:00pm
#4
2009/9/8 Mehdi K. [email protected] :
yeah,that was it! thanks
Additional hint: use p to debug output what you have. e.g.
path=gets
p path
if File.exists?(path) then
Cheers
robert
sepehr
September 9, 2009, 12:48pm
#5
Hi –
On Tue, 8 Sep 2009, Robert K. wrote:
2009/9/8 Mehdi K. [email protected] :
yeah,that was it! thanks
Additional hint: use p to debug output what you have. e.g.
path=gets
p path
if File.exists?(path) then
Meta-additional hint: in 1.9, p returns its argument(s), so if you
have:
path = gets
you can just change it to:
p path = gets
which makes for slightly easier back-and-forth between the p version
and the non-p version.
David
–
David A. Black / Ruby Power and Light, LLC / http://www.rubypal.com
Ruby/Rails training, mentoring, consulting, code-review
Latest book: The Well-Grounded Rubyist (http://www.manning.com/black2 )
September Ruby training in NJ has been POSTPONED. Details to follow.
sepehr
September 9, 2009, 2:16pm
#6
2009/9/9 David A. Black [email protected] :
path=gets
p path = gets
which makes for slightly easier back-and-forth between the p version
and the non-p version.
David, did you rather mean “path = p gets”? Because “p path = gets”
does work in pre 1.9 already.
Kind regards
robert
sepehr
September 8, 2009, 4:30pm
#7
Additional hint: use p to debug output
Or use pp!
With arrays and hashes pp beats p easily! :>
sepehr
September 9, 2009, 3:23pm
#8
Hi –
On Wed, 9 Sep 2009, Robert K. wrote:
 p path = gets
which makes for slightly easier back-and-forth between the p version
and the non-p version.
David, did you rather mean “path = p gets”? Because “p path = gets”
does work in pre 1.9 already.
I didn’t really mean path = p gets – I was thinking in general of the
idiom of:
p x
instead of
p x
x
but chose a bad example
David
–
David A. Black / Ruby Power and Light, LLC / http://www.rubypal.com
Ruby/Rails training, mentoring, consulting, code-review
Latest book: The Well-Grounded Rubyist (http://www.manning.com/black2 )
September Ruby training in NJ has been POSTPONED. Details to follow.