# Read data line by line

**URL:** <https://www.ruby-forum.com/t/read-data-line-by-line/91349>\
**Category:** Ruby\
**Created:** [April 7, 2007, 6:51am UTC](https://www.ruby-forum.com/t/read-data-line-by-line/91349 "2007-04-07T06:51:09Z")\
**Posts on this page:** 6\
**Page:** 1

<div class="post-metadata">

**Author:** ![krishnakishore](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/bb73d2/32.png) [@krishnakishore](https://www.ruby-forum.com/u/krishnakishore)\
**Post date:** [April 7, 2007, 6:51am UTC](https://www.ruby-forum.com/t/read-data-line-by-line/91349/1 "2007-04-07T06:51:09Z")

</div>

could anybody please give me an example of how to read data from a text  
file line by line so that manipulations can be made on each and  
everyline and copy those to other file?

---

<div class="post-metadata">

**Author:** ![krishnakishore](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/bb73d2/32.png) [@krishnakishore](https://www.ruby-forum.com/u/krishnakishore)\
**Post date:** [April 7, 2007, 7:03am UTC](https://www.ruby-forum.com/t/read-data-line-by-line/91349/2 "2007-04-07T07:03:55Z")

</div>

On 4/7/07, Krishna V. [removed\_email\_address@domain.invalid](mailto:removed_email_address@domain.invalid) wrote:

> could anybody please give me an example of how to read data from a text  
> file line by line so that manipulations can be made on each and  
> everyline and copy those to other file?
> 
> –  
> Posted via [http://www.ruby-forum.com/](http://www.ruby-forum.com/).

[http://www.ruby-forum.com/topic/103371#new](http://www.ruby-forum.com/topic/103371#new)

Harry

–

[http://www.kakueki.com/ruby/list.html](http://www.kakueki.com/ruby/list.html)  
Japanese Ruby List Subjects in English

---

<div class="post-metadata">

**Author:** ![krishnakishore](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/bb73d2/32.png) [@krishnakishore](https://www.ruby-forum.com/u/krishnakishore)\
**Post date:** [April 7, 2007, 5:27pm UTC](https://www.ruby-forum.com/t/read-data-line-by-line/91349/3 "2007-04-07T17:27:50Z")

</div>

On Apr 6, 2007, at 11:51 PM, Krishna V. wrote:

> could anybody please give me an example of how to read data from a  
> text  
> file line by line so that manipulations can be made on each and  
> everyline and copy those to other file?

File.open(“output.txt”, “w”) do |output|  
File.foreach(“input.txt”) do |line|  
# change line here…  
output \<\< line  
end  
end

Hope that helps.

James Edward G. II

---

<div class="post-metadata">

**Author:** ![krishnakishore](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/bb73d2/32.png) [@krishnakishore](https://www.ruby-forum.com/u/krishnakishore)\
**Post date:** [April 9, 2007, 1:56pm UTC](https://www.ruby-forum.com/t/read-data-line-by-line/91349/4 "2007-04-09T13:56:31Z")

</div>

James Edward G. II wrote:

> James Edward G. II

As well as something like this

lines=File.readlines(“filename”)  
lines.collect!{|l| do something with l and give it back}  
File.open(“output”,“w”){|f| f\<\<lines.join("\n")}

Pedantic, I know 🙂  
V.-

---

<div class="post-metadata">

**Author:** ![krishnakishore](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/bb73d2/32.png) [@krishnakishore](https://www.ruby-forum.com/u/krishnakishore)\
**Post date:** [April 9, 2007, 8:25pm UTC](https://www.ruby-forum.com/t/read-data-line-by-line/91349/5 "2007-04-09T20:25:22Z")

</div>

Thanks a lot James

---

<div class="post-metadata">

**Author:** ![krishnakishore](https://www.ruby-forum.com/letter_avatar_proxy/v4/letter/k/bb73d2/32.png) [@krishnakishore](https://www.ruby-forum.com/u/krishnakishore)\
**Post date:** [April 9, 2007, 2:06pm UTC](https://www.ruby-forum.com/t/read-data-line-by-line/91349/6 "2007-04-09T14:06:32Z")

</div>

On Apr 9, 2007, at 6:55 AM, Vassilis R. wrote:

> > 
> 
> Pedantic, I know 🙂

The problem with your solution is that it slurps all the data into  
memory at once. For large data sets, this may not be an option.

My solution only reads one line at a time and thus is a lot more  
memory friendly.

James Edward G. II
