# Downloading corrupted files

**URL:** <https://www.ruby-forum.com/t/downloading-corrupted-files/194028>\
**Category:** Ruby\
**Created:** [August 28, 2010, 11:44am UTC](https://www.ruby-forum.com/t/downloading-corrupted-files/194028 "2010-08-28T11:44:16Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![uddun](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/u/f19dbf/32.png) [@uddun](https://www.ruby-forum.com/u/uddun)\
**Post date:** [August 28, 2010, 11:44am UTC](https://www.ruby-forum.com/t/downloading-corrupted-files/194028/1 "2010-08-28T11:44:16Z")

</div>

Hello,

I have created small program to download files from website. I am using  
netbeans and JRuby. When I run program, it downloads files no problem,  
however, if I run it outside netbeans, it downloads files of similar  
size, but they are corrupted and compare by content shows many  
differences.

Code:

def download\_to\_folder(folder, replay\_name,id)  
Dir.chdir(“D:\Starcraft\Replays\”+folder)  
writeout = open(replay\_name, “w”)  
writeout.write(open(“[http://www.sc2rep.com/replays/download?id=](http://www.sc2rep.com/replays/download?id=)”+id.to\_s).read)  
writeout.close  
end

Configuration (maybe it helps): Windows 7 64bit, Ruby 1.9.1-p243,  
Netbeans 6.8 with JRuby 1.8.7 (2009-11-04 patchlevel 174) [java]

---

<div class="post-metadata">

**Author:** ![uddun](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/u/f19dbf/32.png) [@uddun](https://www.ruby-forum.com/u/uddun)\
**Post date:** [August 30, 2010, 1:14am UTC](https://www.ruby-forum.com/t/downloading-corrupted-files/194028/2 "2010-08-30T01:14:06Z")

</div>

On 08/28/2010 02:44 AM, Paul Gilbert wrote:

> def download\_to\_folder(folder, replay\_name,id)  
> Dir.chdir(“D:\Starcraft\Replays\”+folder)  
> writeout = open(replay\_name, “w”)  
> writeout.write(open(“[http://www.sc2rep.com/replays/download?id=](http://www.sc2rep.com/replays/download?id=)”+id.to\_s).read)  
> writeout.close  
> end
> 
> Configuration (maybe it helps): Windows 7 64bit, Ruby 1.9.1-p243,  
> Netbeans 6.8 with JRuby 1.8.7 (2009-11-04 patchlevel 174) [java]

Try it with open(replay\_name, “wb”) to open the file in binary mode.

-Justin

---

<div class="post-metadata">

**Author:** ![uddun](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/u/f19dbf/32.png) [@uddun](https://www.ruby-forum.com/u/uddun)\
**Post date:** [August 30, 2010, 11:11am UTC](https://www.ruby-forum.com/t/downloading-corrupted-files/194028/3 "2010-08-30T11:11:45Z")

</div>

Justin C. wrote:

> On 08/28/2010 02:44 AM, Paul Gilbert wrote:
> 
> > def download\_to\_folder(folder, replay\_name,id)  
> > Dir.chdir(“D:\Starcraft\Replays\”+folder)  
> > writeout = open(replay\_name, “w”)  
> > writeout.write(open(“[http://www.sc2rep.com/replays/download?id=](http://www.sc2rep.com/replays/download?id=)”+id.to\_s).read)  
> > writeout.close  
> > end
> > 
> > Configuration (maybe it helps): Windows 7 64bit, Ruby 1.9.1-p243,  
> > Netbeans 6.8 with JRuby 1.8.7 (2009-11-04 patchlevel 174) [java]
> 
> Try it with open(replay\_name, “wb”) to open the file in binary mode.
> 
> -Justin

Wou, thanks a lot 🙂
