私は常にFasterCSVを使用しましたが、彼はこのファイルを1分以上開いたので、彼は本当の高速を探し始めました。
Googleは助けなしにはできませんでした。
Ccsvは、 Csvファイルをすばやく簡単に操作する方法です。
CcsvはCで実装されており、Rubyによって損なわれています。 ご覧のとおり、実行時間の差は大きくなっています。
user system total real 
      
        
        
        
      
     6.050000 0.460000 6.510000 ( 6.868348) - ccsv 
      
        
        
        
      
     60.540000 5.350000 65.890000 ( 68.840146) - fastercsv 
      
        
        
        
      
     17.400000 0.430000 17.830000 ( 18.786114) -  split (file.each_line {|row| columns = row.split})
      
      熊手がありました。 Ccsvはgemとして提供され、デフォルトで「、」の区切り文字があります。
ペンはそれをパラメーターとして追加する必要がありました。
static VALUE foreach(VALUE self, VALUE filename, VALUE delimetr) {...} 
      
        
        
        
      
     
      
        
        
        
      
     void 
      
        
        
        
      
     Init_ccsv() 
      
        
        
        
      
     { 
      
        
        
        
      
     rb_cC = rb_define_class("Ccsv", rb_cObject); 
      
        
        
        
      
     rb_define_singleton_method(rb_cC, "foreach", foreach, 2); 
      
        
        
        
      
     }
      
      使用例:
Ccsv.foreach(filename, ",\n") { |row| row[0] }
      
      元のライブラリはこちら