Dir.mkdir appending question mark after directory name

Hi all

I´m starting to laern Ruby, but i´ve encountered this strange problem.
This is my code:

pname = gets
pname.chomp
Dir.mkdir(pname)

If I enter test for pname, the resulting folder is named "test?". What
am I doing wrong here?

Thanks

···

--
ruby --version gives this:
ruby 1.8.7 (2011-06-30 patchlevel 352) [x86_64-linux]

I´m running Ubuntu 12.04 on a MacBook

--
Posted via http://www.ruby-forum.com/.

Hi all

I´m starting to laern Ruby, but i´ve encountered this strange problem.
This is my code:

pname = gets
pname.chomp

You are missing an exclamation mark:
pname.chomp!

The method without returns a new object but does not modify your
pname. You can see that by inserting

p pname

before creating the directory.

Dir.mkdir(pname)

If I enter test for pname, the resulting folder is named "test?". What
am I doing wrong here?

See above.

Kind regards

robert

···

On Wed, Aug 29, 2012 at 10:51 AM, Joakim Langvand <lists@ruby-forum.com> wrote:

--
remember.guy do |as, often| as.you_can - without end
http://blog.rubybestpractices.com/

Thanks, Robert!

That helped :slight_smile:

I suppose pname.chomp! would mean the same as pname = pname.chomp then.
Didn´t think of that..

Robert Klemme wrote in post #1073741:

···

On Wed, Aug 29, 2012 at 10:51 AM, Joakim Langvand <lists@ruby-forum.com> > wrote:

Hi all

Im starting to laern Ruby, but ive encountered this strange problem.
This is my code:

pname = gets
pname.chomp

You are missing an exclamation mark:
pname.chomp!

The method without returns a new object but does not modify your
pname. You can see that by inserting

p pname

before creating the directory.

Dir.mkdir(pname)

If I enter test for pname, the resulting folder is named "test?". What
am I doing wrong here?

See above.

Kind regards

robert

--
Posted via http://www.ruby-forum.com/.

Thanks, Robert!

YWC.

That helped :slight_smile:

Good!

I suppose pname.chomp! would mean the same as pname = pname.chomp then.

It has the same effects in your specific example. But effects will be
different if there is another reference the object referred to by
pname. In that case #chomp! and #chomp will behave differently
because with exclamation mark you'll see the same object through both
references but without and assignment you won't.

Kind regards

robert

···

On Wed, Aug 29, 2012 at 11:33 AM, Joakim Langvand <lists@ruby-forum.com> wrote:

--
remember.guy do |as, often| as.you_can - without end
http://blog.rubybestpractices.com/