0

レコードのtxtファイルがあります:

firstname lastname dob ssn status1 status2 status3 status4 firstname lastname dob ...

これを配列に入れることができます:

tokens[0] = firstname
...
tokens[8] = firstname (of record 2).  
tokens[9] = lastname (of record 2) and so on.

配列を段階的に反復したいtokensので、次のように言えます。

record1 = tokens[index] + tokens[index+1] + tokens[index+2] etc.

ステップ (上記の例 8) はレコードを処理します。

record2, record3 etc etc.

step 0 index is 0
step 1 (step set to 8 so index is 8)
etc.

これらのレコードは、私が .split を呼び出した txt ファイルから来ていると言うべきだと思います。

file = File.open(ARGV[0], 'r')
line = ""
while !file.eof?
   line = file.readline
end
##knowing a set is how many fields, do it over and over again.

tokens = line.split(" ")
4

2 に答える 2

2

を使用each_sliceすると、ブロック内のフィールドに変数を割り当てることもできます。

tokens.each_slice(8) { |firstname, lastname, dob, ssn, status1, status2, status3, status4|
  puts "firstname: #{firstname}"
}
于 2013-04-12T16:01:19.897 に答える