[File -> Lines -> Chars] Logic issue (open)

Hi there

Just a simple question from a newbie =)

I have a file that can have N lines. Those lines are string of
characters, and each character is a sign of a combination i have to
store, but at the same time i have to be able to treat each sign of each
combination separately, in order to compare them and all.

For instance:

Combination file

11XX22X1XX12X23
XX12XX122X212X2
XX2X11XX11XX111

My program has to return and array for each line, and that array should
have stored in it each sign of the line.

My question is…how can i Read EACH line of the file, explode each char
of the array and store it?

Thx.

Flaab M. wrote:

of the array and store it?

Thx.

ary = File.open(file).readlines.map {|l|
l.chomp.split //
}

Flaab M. wrote:

of the array and store it?
The program below reads lines and creates an array of arrays (a
two-dimensional array), each inner cell contains a single character:


#!/usr/bin/ruby -w

data = “11XX22X1XX12X23\nXX12XX122X212X2\nXX2X11XX11XX111\n”

lines = []

data.each do |line|
lines << line.split("")
end

p lines

On 15/11/06, Flaab M. [email protected] wrote:

of the array and store it?

Thx.


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

You can use each_byte to iterate over every character of a string.
Just be aware that it will pass an int character code, not the actual
character itself, into the associated block but you can convert it
back using the chr method like so:
irb(main):026:0> “hello”.each_byte{|c|puts c.chr}
h
e
l
l
o

Farrel

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs