# Permission problem under WinXP

**URL:** <https://www.ruby-forum.com/t/permission-problem-under-winxp/154080>\
**Category:** Ruby\
**Created:** [November 25, 2008, 5:40am UTC](https://www.ruby-forum.com/t/permission-problem-under-winxp/154080 "2008-11-25T05:40:39Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![RichardOnRails](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/e0b2c6/32.png) [@RichardOnRails](https://www.ruby-forum.com/u/RichardOnRails)\
**Post date:** [November 25, 2008, 5:40am UTC](https://www.ruby-forum.com/t/permission-problem-under-winxp/154080/1 "2008-11-25T05:40:39Z")

</div>

Hi All,

I generated a Ruby on Rails app, which among other things, had to  
import content from a bunch of CSV files from time to time. When I  
generated the app, I had a typo: I used cvs instead of csv. When I  
started coding, I used csv. It got to be a mess. Being pigheaded I  
decided to write a ruby script to transform all file-names and file  
content to conform to csv.

The transformation script is posted at [http://www.pastie.org/323198](http://www.pastie.org/323198).  
I’ve tested the code thoroughly, so I think its really a Windows  
problem: it’s keeping a lock on the file(s) I’m using despite the  
fact that I issued Ruby close commands.

I wonder if anyone has a quick fix for this problem. If not, I’ll  
walk the extra mile and write my filename changes to disk and write a  
stand-alone app to apply those changes. But if there’s a slick way to  
solves this, I’d like to learn it.

Thanks in Advance,  
Richard

---

<div class="post-metadata">

**Author:** ![RichardOnRails](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/e0b2c6/32.png) [@RichardOnRails](https://www.ruby-forum.com/u/RichardOnRails)\
**Post date:** [November 25, 2008, 6:00am UTC](https://www.ruby-forum.com/t/permission-problem-under-winxp/154080/2 "2008-11-25T06:00:34Z")

</div>

RichardOnRails wrote:

> I’ve tested the code thoroughly, so I think its really a Windows  
> problem: it’s keeping a lock on the file(s) I’m using despite the  
> fact that I issued Ruby close commands.
> 
> I wonder if anyone has a quick fix for this problem. If not, I’ll  
> walk the extra mile and write my filename changes to disk and write a  
> stand-alone app to apply those changes. But if there’s a slick way to  
> solves this, I’d like to learn it.

Line 26:

data = File.open(name).readlines

There’s your open handle. Replace that with:

IO.readlines(name)

Regards,

Dan

---

<div class="post-metadata">

**Author:** ![RichardOnRails](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/e0b2c6/32.png) [@RichardOnRails](https://www.ruby-forum.com/u/RichardOnRails)\
**Post date:** [November 25, 2008, 6:11am UTC](https://www.ruby-forum.com/t/permission-problem-under-winxp/154080/3 "2008-11-25T06:11:05Z")

</div>

On Nov 24, 11:55 pm, Daniel B. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> > The transformation script is posted athttp://www.pastie.org/323198.
> 
> data = File.open(name).readlines
> 
> There’s your open handle. Replace that with:
> 
> IO.readlines(name)
> 
> Regards,
> 
> Dan

Hi Dan,

I just wrote my son, for whom I’m writing this app, that I was  
hoping I’d get a magic bullet so that I didn’t have to write my array  
of name-changes to disk, read them in in second program and copy in my  
change algorithm.

> There’s your open handle …

And there’s my magic bullet. Now I have to apologize for falsely  
claiming that Windows was at fault 🙂

Thank you very much for post such a neat solution.

Best wishes,  
Richard

---

<div class="post-metadata">

**Author:** ![RichardOnRails](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/e0b2c6/32.png) [@RichardOnRails](https://www.ruby-forum.com/u/RichardOnRails)\
**Post date:** [November 25, 2008, 6:56am UTC](https://www.ruby-forum.com/t/permission-problem-under-winxp/154080/4 "2008-11-25T06:56:43Z")

</div>

RichardOnRails wrote:

> > > I’ve tested the code thoroughly, so I think its really a Windows  
> > > There’s your open handle. Replace that with:
> > 
> > IO.readlines(name)
> > 
> > Regards,
> > 
> > Dan
> 
> Hey Dan,
> 
> Final word: It worked perfectly. Many thanks.

Excellent, glad to hear it.

Regards,

Dan

---

<div class="post-metadata">

**Author:** ![RichardOnRails](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/r/e0b2c6/32.png) [@RichardOnRails](https://www.ruby-forum.com/u/RichardOnRails)\
**Post date:** [November 25, 2008, 6:25am UTC](https://www.ruby-forum.com/t/permission-problem-under-winxp/154080/5 "2008-11-25T06:25:43Z")

</div>

On Nov 24, 11:55 pm, Daniel B. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> > The transformation script is posted athttp://www.pastie.org/323198.
> 
> data = File.open(name).readlines
> 
> There’s your open handle. Replace that with:
> 
> IO.readlines(name)
> 
> Regards,
> 
> Dan

Hey Dan,

Final word: It worked perfectly. Many thanks.

Best wishes,  
Richard
